break 语句
- break跳出当前层的循环,break以后的循环都不再执行
- 实例1
for i in range(10):
if i == 5: # 如果i等于5时就跳出循环,不再执行了
break # break跳出当前层的for循环,i等于5以后的都不执行了
print(i)
上面输出结果
0
1
2
3
4
- 实例2
for i in range(3):
print('layer 1:%s' % i) # 打印第一层循环i的值
for j in range(2):
if j == 1: # 如果j的值为1时就跳出当前层循环
break
print('layer 2:%s' % j) # 打印第二层循环j的值
上面输出结果
layer 1:0
layer 2:0
layer 1:1
layer 2:0
layer 1:2
layer 2:0
由上面的结果可以看出,第二层的break只跳出了第二层for的循环,而第一层for正常执行完毕
continue 语句
- continue跳出当前层循环的本次循环,继续执行当前层的下一次循环
- 实例1
for i in range(10):
if i < 5: # 如果i小于5就不打印
continue # continue跳出当次循环,继续执行下次循环
print(i)
输出结果
5
6
7
8
9
综合实例
- 实例1
for i in range(5):
if i < 3:
continue # 如果i小于3,就跳出不打印
print('layer 1:%d' % i)
for j in range(5):
if j == 3:
break # 如果j等于3就退出当前层的循环
print('%12s%d' %('layer 2:',j))
输出结果
layer 1:3
layer 2:0
layer 2:1
layer 2:2
layer 1:4
layer 2:0
layer 2:1
layer 2:2
- 实例2
flag = False # 声明一个标志位,用于控制多层循环退出
for i in range(5):
if i < 3:
continue # 如果i小于3,就跳出不打印
print('layer 1:%d' % i)
for j in range(5):
if j == 3:
flag = True
break # 如果j等于3就退出当前层的循环
print('%12s%d' %('layer 2:',j))
if flag:
break
输出结果
layer 1:3
layer 2:0
layer 2:1
layer 2:2