流程控制之for循环
一、语法
为什么有了while循环,还需要有for循环呢?不都是循环吗?我给大家出个问题,我给出一个列表,我们把这个列表里面的所有名字取出来。
Copyname_list = ['nick', 'jason', 'tank', 'sean']
n = 0
while n < 4:
# while n < len(name_list):
print(name_list[n])
n += 1
Copynick
jason
tank
sean
字典也有取多个值的需求,字典可能有while循环无法使用了,这个时候可以使用我们的for循环。
Copyinfo = {'name': 'nick', 'age': 19}
for item in info:
# 取出info的keys
print(item)
Copyname
age
Copyname_list = ['nick', 'jason', 'tank', 'sean']
for item in name_list:
print(item)
Copynick
jason
tank
sean
for循环的循环次数受限于容器类型的长度,而while循环的循环次数需要自己控制。for循环也可以按照索引取值。
Copyprint(list(range(1, 10)))
Copy[1, 2, 3, 4, 5, 6, 7, 8, 9]
Copyfor i in range(1, 10): # range顾头不顾尾
print(i)
Copy1
2
3
4
5
6
7
8
9
Copy# for循环按照索引取值
name_list = ['nick', 'jason', 'tank', 'sean']
# for i in range(5): # 5是数的
for i in range(len(name_list)):
print(i, name_list[i])
Copy0 nick
1 jason
2 tank
3 sean
二、for + break
for循环调出本层循环。
Copy# for+break
name_list = ['nick', 'jason', 'tank', 'sean']
for name in name_list:
if name == 'jason':
break
print(name)
Copynick
三、for + continue
for循环调出本次循环,进入下一次循环
Copy# for+continue
name_list = ['nick', 'jason', 'tank', 'sean']
for name in name_list:
if name == 'jason':
continue
print(name)
Copynick
tank
sean
四、for循环嵌套
外层循环循环一次,内层循环循环所有的。
Copy# for循环嵌套
for i in range(3):
print(f'-----:{i}')
for j in range(2):
print(f'*****:{j}')
Copy-----:0
*****:0
*****:1
-----:1
*****:0
*****:1
-----:2
*****:0
*****:1
五、for+else
for循环没有break的时候触发else内部代码块。
Copy# for+else
name_list = ['nick', 'jason', 'tank', 'sean']
for name in name_list:
print(name)
else:
print('for循环没有被break中断掉')
Copynick
jason
tank
sean
for循环没有break中断掉
六、for循环实现loading
Copyimport time
print('Loading', end='')
for i in range(6):
print(".", end='')
time.sleep(0.2)
CopyLoading......
来源:CSDN
作者:lipenghandsome
链接:https://blog.csdn.net/lipenghandsome/article/details/104617531