Python 循环
Python 循环
while
while 后面要跟一个条件判断句,如果条件为真,则继续执行
示例:
i = 0
while i < 3:
print(i)
i += 1
while ... else ...
当 while 后面的条件为 False 时,就会执行 else 中的内容
示例:
i = 0
while i < 3:
print(i)
i += 1
else:
print("in else")
输出结果
0
1
2
in else
当 while 后面的条件为 True 时,即使执行到 break 也不会执行 else 中的内容
i = 0
while True:
print(i)
if i == 3:
break
i += 1
else:
print("in else")
输出结果
0
1
2
3
for
in 后面一定要跟一个可迭代对象
什么是可迭代对象?
for i in range(3):
print(i)
for ... else ...
当循环完整跑完,就会执行 else 中的内容
示例:
for i in range(5):
if i == 3:
continue
print(i)
else:
print("in else")
输出结果:
0
1
2
4
in else
for i in range(5):
if i == 3:
break
print(i)
else:
print("in else")
输出结果:
0
1
2
如果在循环中调用 break, 则循环没有完整跑完,就不会执行 else 中的内容,但是如果调用了 continue, 循环完整跑完,会执行 else 中的内容
借助这个原理,可以实现多层循环的跳出
多层循环的跳出
示例:
for i in range(3):
for j in range(3):
if i == 1 and j == 2:
break
print(i, j)
输出结果:
0 0
0 1
0 2
1 0
1 1
2 0
2 1
2 2
如果在内层循环里面 break 只能结束内存循环,无法结束外层循环
示例:
for i in range(3):
for j in range(3):
if i == 1 and j == 2:
break
print(i, j)
else:
continue
break
输出结果:
0 0
0 1
0 2
1 0
1 1
内层循环的 break 导致 else 中的 continue 没有被执行,而是执行到了外层循环的 break, 外层循环提前结束