python中for循环

for循环

#格式:
for 变量名 in 可迭代对象:
	for循环的代码体 
迭代对象可为任何类型:字符串,列表,字典,元组,集合
eg: name_list = ['xxx', 'tony', 'jack', 'gary']  循环列表中的每一个元素并打印
for name in name_list:
    print(name)
'''
for循环能完成的事情,while循环都可以完成
'''
# 用while循环实现:
count = 1
while count < 5:
	print(name_list[count])
    count += 1
故:for循环语法更加简洁 并且在循环取值问题上更加方便

# for循环字符串
for i in 'hello world'
    print(i)
'''挨个打印出来字符串的每个字符(空格也属于一个字符)'''

# for循环字典:默认只能拿到K:V键值对的K
dic = {'username':'gary', 'password':123, 'hobby':'basketball'}
for i in dic:
    print(i,dic[i])
    
'''输出结果为:
username gary
password 123
hobby basketball'''

range关键字

#用法:
range(num) : 0到num-1
range(num1,num2): num1到num2-1
range(num1,num2,num3): num1到num2-1 num3为步长
eg:for i in range(1,10,2) 则取到的为1 3 5 6 7 9
#从头到尾,但不会循环最后一位。顾头不顾尾

#range在不同的版本解释器中,本质不同
	在python2.x中range会直接生成一个列表
    在python3.x中range是一个迭代器 节省了内存空间
    在python2.x中xrange为一个迭代器

for+break

#break 用于终止本层循环
eg:
    for i in range(1,10):
    	if i == 4:
        	break
         print(i)
    #输出结果为:1 2 3 

for+continue

continue 用于结束本次循环
eg:
	for i in range(1,10):
        if i == 4;
        	continue
        print(i)
    #输出结果为:1 2 3 5 6 7 8 9 

for+else

else在for循环中正常结束循环才会执行
eg:
	for i in range(10):
    	if i==4:
        	break
        print(i)
    else:
        print('循环')
    #这种情况不会打印 else:下的循环

for循环的嵌套使用

#打印99乘法表
for i in range(1,10):
	for j in range(1,i+1):
        print('%s*%s=%s'% (i, j, i*j),end=' ')
    print()  # 这个为换行
posted @ 2021-11-05 19:49  JasonBorn  阅读(503)  评论(0编辑  收藏  举报