python中如何跳出多层循环
像c语言中的goto,shell中的break 后面跟跳出层次的在方法在python中都没有,这可不是因为python设计的low,而是允许一次性跳出多个循环很容易造成程序流程的混乱,使理解和调试程序都产生困难,这也是为什么goto在c语言中不建议使用的原因。
#_*_ coding:utf-8 _*_
loop1 = 0 #设定loop1 and loop2这两个计数器
loop2 = 0
while True:
loop1 +=1
print "Loop1:", loop1
break_flag = False #在父循环中设定一个跳出标志,子循环只要想连父亲一块跳出时,就把这个标志改成True
while True:
loop2 +=1
if loop2 ==5:
break_flag = True #让我爹一块往外跳
break #我先跳出第一层
print 'Loop2:',loop2
if break_flag: #儿子跳了没有?
print u"接到子循环跳出通知,我也得跳了!" #我擦,儿子真跳了。
break
上面代码的基本逻辑就是,在第一层循环中设置一个是否跳出的标志变量默认为False,如果子循环在break时想连它的上一层一起break,就可以把这个跳出的标志变量改成True,当子循环跳出后,
父循环会继续往下走,但下在的语句是判断这个跳出变量是否已经被子循环改掉了,如果已经改掉了,那就直接跳出就好了,因此你就实现了同时跳出2层循环的功能啦。
转载于:https://blog.51cto.com/9425473/1692649
python中如何跳出多层循环相关推荐
- Python教程:跳出多层循环for、while
for跳出多层循环 break_flag = False for i in range(10):print("爷爷层",i)for j in range(10):print(&qu ...
- python开发技巧——跳出多层循环
在业务逻辑中有时候会遇到两层for循环的情况,触发某些条件时,需要直接退出两层for循环 而python官方是没有 goto 语句的那么我们可以这样实现 第一种定义变量flag,根据flag的值做退出 ...
- 白嫖党最爱!java中break跳出多层循环
害怕干不过SpringBoot?莫慌,我送你套神级pdf文档 随着 Spring Boot 使用越来越广泛,Spring Boot 已经成为 Java 程序员面试的知识点,很多同学对 Spring B ...
- c 语言中break是跳出本层循环,C break跳出多层循环
C break跳出多层循环 在C/C++中,跳出多层循环有3中方法: 1.用break;加上一个辅助的标志变量. 2.用goto; 3.用try ... catch; 其中break对if-e ...
- python多重循环break_Python教程:跳出多层循环for、while
for跳出多层循环 break_flag = False for i in range(10): print("爷爷层",i) for j in range(10): print( ...
- Java中跳出多层循环的简单方法
在Java程序中可能使用多层循环来处理复杂的逻辑.但如果要从最内层循环跳出最外层循环是比较麻烦.下面的代码是一个三层循环的例子: String[]arr=newString[]{"a&quo ...
- python的跳出循环方式(跳出多层循环方法)
常规的break跳出当前循环,continue终止当前,不会跳出整个循环,当有多个循环时,如何跳出整个循环 break跳出当前最深的循环 def test1():for i in range(3):f ...
- java中跳出循环终止循环_js for终止循环 跳出多层循环
今天写带代码的时候遇到一段代码,需要终止运行for,通过遍历json数据实现判断 var Tid="55555"; var jb51cp = [ {id:66666,Cpurl:& ...
- python循环加flag_Python教程:跳出多层循环for、while
for跳出多层循环 break_flag = False for i in range(10): print("爷爷层",i) for j in range(10): print( ...
最新文章
- ARP(Accounting Resource Planning)项目感想
- Ionic3 UI组件之 ImageLoader
- python gpu加速 显卡_PyTorch-GPU加速实例
- TK:绘制BoundaryEdges边界边用法实战
- 上篇 | 说说无锁(Lock-Free)编程那些事
- 注重代码效率_如何提升质量:注重态度
- Flink :刷屏 forceKillApplication over null,Retrying immediately The Client is Stopped
- 用python实现队列的循环左移和右移的实验原理_python的移位操作实现详解
- python 图片识别
- 2021-06-21属性选择器
- 股票历史数据下载-A股所有股票的历史数据下载
- 论文阅读汇总(4)-【篇数:50】
- 2012 九月十月百度人搜,阿里巴巴,腾讯华为笔试面试八十题(第331-410题)
- 应该像许三多学习的职业态度!
- php跑满CPU的问题终于发现原因了
- Java 爬虫工具Jsoup解析
- 魏文王问扁鹊的注释_扁鹊见魏文王是怎么回事 魏文王问扁鹊的典故故事
- 如何快速理解JavaScript 中重要语句for循环
- M3操作系统汇编理解
- 2021牛客国庆集训派对day1 H - Longest Path
热门文章
- 实验中遇到的Quartus II的Warning的解释、原因以及解决方法
- liunx(3)-内核模块编写与系统调用
- Centos7.6 下部署Cobbler
- VIM自动补全插件:deoplete
- apigateway-kong(四)负载均衡理论及实现
- Why Did the Cow Cross the Road III(树状数组)
- Java并发编程中级篇(一):使用Semaphore信号量进行并发控制
- hadoop中汉字与英文字符混合的keyword做为combine的key的问题
- SQL中 不等于时存在null的问题
- jQuery 事件方法大全