发布时间:2019-08-22 08:01:24编辑:auto阅读(1820)
经网上学习,Python跳出多层循环的方法大致有一下三种
1、(比较难理解的)for … else … 用法
for i in range(5):
for j in range(5):
for k in range(5):
if i == j == k == 3:
break
#注意,这里的break使得3行后的continue不得执行,使得程序无法直接跳转到第二个for,使得程序执行第二个break#
else:
'Do sth.'
else: continue
#注意,这里的continue是给第二层循环用的,原因见下文#
break
else: continue
break
“else在 while和for 正常循环完成之后执行,和直接写在 while和for 之后没有区别,但是如果用break结束循环之后else就不会执行了。”
再利用continue使得break不被执行而直接跳到第一行,真是太具技巧性了!
2、封装为函数并使用return
def test():
for i in range(5):
for j in range(5):
for k in range(5):
if i == j == k == 3:
return
else:
'Do sth.'
test()
顺便这里展示了def指令是如何使用的
3、使用flag
for x in range(0,3,1):
if flag == 1:
break
for y in range(0,3,1):
'Do sth.'
if 1==1
flag=1
这个方法涉及外层多次无用的if判断
上一篇: Python可以做什么?
下一篇: 【已解决】为什么Python打印数据显示
48870
47939
38718
35863
30288
27042
26075
20909
20714
19073
511°
609°
613°
616°
593°
577°
643°
717°
834°
936°