break/continue这两个关键字在平时的使用中一直被混淆。很难理解,好像是一段时间没用了,忘记了什么。这个问题也是很多初学者比较容易提的问题。【阅读全文】我们先通过一个简单的单层循环来了解一下这两个关键字的用法。print('==============单层回收==============')forninrange(10):ifn==9:print('退出当前循环,currentn=',n)breakelifn==4:print('跳过当前循环,currentn=',n)continueprint('当前n=',n)下面是执行后的结果展示。#currentn=0#currentn=1#currentn=2#currentn=3#跳过当前循环,currentn=4#currentn=5#currentn=6#currentn=7#currentn=8#退出当前循环,当前n=9根据执行结果可以看出,当n=4时,不打印当前n值,但是在n=5之后仍然打印,就是这个函数的继续。当执行关键字break时,for循环会直接退出,不会继续执行。同样的方法,这次把单层循环变成双层循环,看看效果。print('==============双层回收==============')forminrange(10):forninrange(10):ifn==9:print('退出当前循环,currentn=',n)breakelifn==4:print('跳过当前循环,currentn=',n)continueprint('Currentn=',n)ifm==8:break下面是执行后的结果展示。#currentn=0#currentn=1#currentn=2#currentn=3#跳过当前循环,currentn=4#currentn=5#currentn=6#currentn=7#currentn=8#退出当前循环,当前n=9#当前n=0#当前n=1#当前n=2#当前n=3#跳过当前循环,当前n=4#当前n=5#当前n=6#currentn=7#currentn=8#退出当前循环,currentn=9#currentn=0#currentn=1#currentn=2#currentn=3#跳过当前循环,currentn=4#currentn=5#currentn=6#currentn=7#currentn=8#退出当前循环,currentn=9#currentn=0#currentn=1#currentn=2#currentn=3#跳过当前循环,当前n=4#当前n=5#当前n=6#当前n=7#当前n=8#退出当前循环,当前n=9#当前n=0#当前n=1#当前n=2#当前n=3#跳过当前循环,当前n=4#当前n=5#当前n=6#当前n=7#当前n=8#退出当前循环,当前n=9#当前n=0#当前rentn=1#当前n=2#当前n=3#跳过当前循环,当前n=4#当前n=5#当前n=6#当前n=7#当前n=8#退出当前循环,当前n=9#当前n=0#当前n=1#当前n=2#当前n=3#跳过当前循环,当前n=4#当前n=5#当前n=6#当前n=7#当前n=8#退出当前循环,currentn=9#currentn=0#currentn=1#currentn=2#currentn=3#跳过当前循环,currentn=4#currentn=5#currentn=6#currentn=7#currentn=8#exitcurrentloop,currentn=9#currentn=0#currentn=1#currentn=2#currentn=3#skipcurrentloop,currentn=4#currentn=5#currentn=6#currentn=7#currentn=8#退出当前循环,currentn=9根据结果可以观察到执行次数内层循环9次,在执行到m=8时退出循环。正好m的值只循环到0-8,也就是正好9次。内循环的break/continue只对内循环有效,所以断定break/continue只对其对应的当前循环有效。如果是三层循环或者更多循环,效果是一样的。print('==============三层回收==============')foriinrange(3):forjinrange(3):forkinrange(3):ifkin[1,2,3]:continueprint('currentk=',k)ifjin[1,2,3]:continueprint('currentj=',j)ifiin[2,3]:breakprint('currenti=',i)同理,只需要在对应的current循环中加入break/continue逻辑控制即可。#==============三层循环使用==============#currentk=0#currentj=0#currentk=0#当前k=0#当前i=0#当前k=0#当前j=0#当前k=0#当前k=0#当前i=1#当前k=0#当前j=0#当前k=0#currentk=0的结果执行完后,i值对应的循环执行0和1,j/k值对应的循环只执行0。所以再次确认break/continue只生效为其自身相应的电流回路。【优秀往事】用python为心爱的人制作520照片墙,效果图制作成功!两个库处理python中javascript代码块/文件的引用...python是否实现excel数据与mysql数据库的互通!如何用python做一个解压小工具,让你以后不用再下载各种格式的解压软件了。。python实现超快的窗口截图,自动获取当前活动窗口并显示截图。。.
