像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中如何跳出多层循环相关推荐

  1. Python教程:跳出多层循环for、while

    for跳出多层循环 break_flag = False for i in range(10):print("爷爷层",i)for j in range(10):print(&qu ...

  2. python开发技巧——跳出多层循环

    在业务逻辑中有时候会遇到两层for循环的情况,触发某些条件时,需要直接退出两层for循环 而python官方是没有 goto 语句的那么我们可以这样实现 第一种定义变量flag,根据flag的值做退出 ...

  3. 白嫖党最爱!java中break跳出多层循环

    害怕干不过SpringBoot?莫慌,我送你套神级pdf文档 随着 Spring Boot 使用越来越广泛,Spring Boot 已经成为 Java 程序员面试的知识点,很多同学对 Spring B ...

  4. c 语言中break是跳出本层循环,C break跳出多层循环

    C break跳出多层循环 在C/C++中,跳出多层循环有3中方法: 1.用break;加上一个辅助的标志变量. 2.用goto; 3.用try   ...   catch; 其中break对if-e ...

  5. python多重循环break_Python教程:跳出多层循环for、while

    for跳出多层循环 break_flag = False for i in range(10): print("爷爷层",i) for j in range(10): print( ...

  6. Java中跳出多层循环的简单方法

    在Java程序中可能使用多层循环来处理复杂的逻辑.但如果要从最内层循环跳出最外层循环是比较麻烦.下面的代码是一个三层循环的例子: String[]arr=newString[]{"a&quo ...

  7. python的跳出循环方式(跳出多层循环方法)

    常规的break跳出当前循环,continue终止当前,不会跳出整个循环,当有多个循环时,如何跳出整个循环 break跳出当前最深的循环 def test1():for i in range(3):f ...

  8. java中跳出循环终止循环_js for终止循环 跳出多层循环

    今天写带代码的时候遇到一段代码,需要终止运行for,通过遍历json数据实现判断 var Tid="55555"; var jb51cp = [ {id:66666,Cpurl:& ...

  9. python循环加flag_Python教程:跳出多层循环for、while

    for跳出多层循环 break_flag = False for i in range(10): print("爷爷层",i) for j in range(10): print( ...

最新文章

  1. ARP(Accounting Resource Planning)项目感想
  2. Ionic3 UI组件之 ImageLoader
  3. python gpu加速 显卡_PyTorch-GPU加速实例
  4. TK:绘制BoundaryEdges边界边用法实战
  5. 上篇 | 说说无锁(Lock-Free)编程那些事
  6. 注重代码效率_如何提升质量:注重态度
  7. Flink :刷屏 forceKillApplication over null,Retrying immediately The Client is Stopped
  8. 用python实现队列的循环左移和右移的实验原理_python的移位操作实现详解
  9. python 图片识别
  10. 2021-06-21属性选择器
  11. 股票历史数据下载-A股所有股票的历史数据下载
  12. 论文阅读汇总(4)-【篇数:50】
  13. 2012 九月十月百度人搜,阿里巴巴,腾讯华为笔试面试八十题(第331-410题)
  14. 应该像许三多学习的职业态度!
  15. php跑满CPU的问题终于发现原因了
  16. Java 爬虫工具Jsoup解析
  17. 魏文王问扁鹊的注释_扁鹊见魏文王是怎么回事 魏文王问扁鹊的典故故事
  18. 如何快速理解JavaScript 中重要语句for循环
  19. M3操作系统汇编理解
  20. 2021牛客国庆集训派对day1 H - Longest Path

热门文章

  1. 实验中遇到的Quartus II的Warning的解释、原因以及解决方法
  2. liunx(3)-内核模块编写与系统调用
  3. Centos7.6 下部署Cobbler
  4. VIM自动补全插件:deoplete
  5. apigateway-kong(四)负载均衡理论及实现
  6. Why Did the Cow Cross the Road III(树状数组)
  7. Java并发编程中级篇(一):使用Semaphore信号量进行并发控制
  8. hadoop中汉字与英文字符混合的keyword做为combine的key的问题
  9. SQL中 不等于时存在null的问题
  10. jQuery 事件方法大全