Python跳出多重循环的方法示例


Posted in Python onJuly 03, 2019

方法1:自定义异常

# -*- coding:utf-8 -*-
 
"""
功能:python跳出循环
"""
# 方法1:自定义异常
 
 
class Getoutofloop(Exception):
  pass
try:
  for i in range(5):
    for j in range(5):
      if i == j == 2:
        raise Getoutofloop()
      else:
        print i, '----', j
except Getoutofloop:
  pass

方法2:将循环封装为函数,return

# -*- coding:utf-8 -*-
 
"""
功能:python跳出循环
"""
# 方法2:封装为函数,return
 
 
def test():
  for i in range(5):
    for j in range(5):
      if i == j == 2:
        return
      else:
        print i, '----', j
 
test()

方法3:用for...else...语句

# -*- coding:utf-8 -*-
 
"""
功能:python跳出循环
"""
# 方法2:for...else...用法,用于跳出指定循环层
 
for i in range(5):
  for j in range(5):
    for k in range(5):
      if i == j == k == 3:
        break
      else:  
        print i, '----', j, '----', k
    else:    # else1
      continue
    break    # break1
  else:      # else2
    continue
  break      # break2

方法3解释:
(1)break能跳出某一重循环(该重循环的本次及剩余次数都不再执行),但并不能跳出该重循环的其他外重循环。

例如,最内第3重循环break之后,程序返回第2重循环继续执行第2重的下一次,然后第3重循环将再次执行。

(2)continue是跳过某一重循环的某一次,但该重循环的剩余次数会继续执行。

(3)for...else:其中else块中的语句将在for循环完整执行过之后才会被执行,如果for循环被break,则else块将不会被执行。

(4)方法3中,当第3重循环满足i == j == k ==3时,第3重循环被break,则并列的else1将跳过,执行break1,导致第2重循环

被终止,则else2被跳过,执行break2,导致第1重循环被终止。

最终实现跳出整个循环。

for...else加break举例:

# -*- coding:utf-8 -*-
 
"""
功能:for...else语句
"""
 
for i in range(5):
  print i
else:
  print u"循环完整执行一次。"
 
for j in range(6):
  for k in range(6):
    print j, k
    if j == 3:
      print u"内重循环即将被break"
      break
  else:
    print u"内重循环完整执行一次。"
else:
  print u"外重循环完整执行一次。"

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python判断、获取一张图片主色调的2个实例
Apr 10 Python
Python算法之栈(stack)的实现
Aug 18 Python
举例区分Python中的浅复制与深复制
Jul 02 Python
Python中字典的setdefault()方法教程
Feb 07 Python
Python Flask前后端Ajax交互的方法示例
Jul 31 Python
PyQt5固定窗口大小的方法
Jun 18 Python
PyQt5 QTableView设置某一列不可编辑的方法
Jun 25 Python
python中pip的使用和修改下载源的方法
Jul 08 Python
Django框架获取form表单数据方式总结
Apr 22 Python
对Matlab中共轭、转置和共轭装置的区别说明
May 11 Python
python实现自动清理文件夹旧文件
May 10 Python
解决Pytorch dataloader时报错每个tensor维度不一样的问题
May 28 Python
Python多版本开发环境管理工具介绍
Jul 03 #Python
介绍一款python类型检查工具pyright(推荐)
Jul 03 #Python
Python flask框架post接口调用示例
Jul 03 #Python
Python3安装psycopy2以及遇到问题解决方法
Jul 03 #Python
python调试神器PySnooper的使用
Jul 03 #Python
详解DeBug Python神级工具PySnooper
Jul 03 #Python
使用python来调用CAN通讯的DLL实现方法
Jul 03 #Python
You might like
PHP版自动生成文章摘要
2008/07/23 PHP
自编函数解决pathinfo()函数处理中文问题
2014/11/03 PHP
php实现数组按指定KEY排序的方法
2015/03/30 PHP
PHP的邮件群发系统phplist配置方法详细总结
2016/03/30 PHP
解决extjs在firefox中关闭窗口再打开后iframe中js函数访问不到的问题
2008/11/06 Javascript
jquery 插件 web2.0分格的分页脚本,可用于ajax无刷新分页
2008/12/25 Javascript
JavaScript URL参数读取改进版
2009/01/16 Javascript
利用JQuery+EasyDrag 实现弹出可拖动的Div,同时向Div传值,然后返回Div选中的值
2009/10/24 Javascript
收集的10个免费的jQuery相册
2011/02/26 Javascript
JavaScript中两个感叹号的作用说明
2011/12/28 Javascript
用Javascript获取页面元素的具体位置
2013/12/09 Javascript
JavaScript错误处理
2015/02/03 Javascript
jQuery实现鼠标滑过点击事件音效试听
2015/08/31 Javascript
解决js图片加载时出现404的问题
2020/11/30 Javascript
jQuery插件支持同一页面被多次调用
2016/02/14 Javascript
js实现首屏延迟加载实现方法 js实现多屏单张图片延迟加载效果
2017/07/17 Javascript
Javascript中的作用域及块级作用域
2017/12/08 Javascript
Vue中"This dependency was not found"问题的解决方法
2018/06/19 Javascript
js console.log打印对象时属性缺失的解决方法
2019/05/23 Javascript
JS代码触发事件代码实例
2020/01/02 Javascript
JavaScript中作用域链的概念及用途讲解
2020/08/06 Javascript
[46:47]2014 DOTA2国际邀请赛中国区预选赛5.21 LGD-CDEC VS NE
2014/05/22 DOTA
利用Python实现Windows下的鼠标键盘模拟的实例代码
2017/07/13 Python
python机器学习理论与实战(六)支持向量机
2018/01/19 Python
使用pandas批量处理矢量化字符串的实例讲解
2018/07/10 Python
Pycharm无法使用已经安装Selenium的解决方法
2018/10/13 Python
python中seaborn包常用图形使用详解
2019/11/25 Python
pycharm 使用anaconda为默认环境的操作
2021/02/05 Python
利用css3画个同心圆示例代码
2017/07/03 HTML / CSS
台湾生鲜宅配:大口市集
2017/10/14 全球购物
英国书籍、CD、DVD和游戏的第一道德零售商:Awesome Books
2020/02/22 全球购物
副总经理任命书
2014/06/05 职场文书
2014最新党员违纪检讨书
2014/10/12 职场文书
2014年消防工作总结
2014/11/21 职场文书
入党现实表现材料
2014/12/23 职场文书
2015年全国爱眼日活动方案
2015/05/05 职场文书