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访问MySQL封装的常用类实例
Nov 11 Python
在Python的Django框架中显示对象子集的方法
Jul 21 Python
python生成器表达式和列表解析
Mar 10 Python
Python中django学习心得
Dec 06 Python
python中的二维列表实例详解
Jun 19 Python
详解Django中六个常用的自定义装饰器
Jul 04 Python
Python中PyQt5/PySide2的按钮控件使用实例
Aug 17 Python
python基于FTP实现文件传输相关功能代码实例
Sep 28 Python
详解Django配置优化方法
Nov 18 Python
python扫描线填充算法详解
Feb 19 Python
关于torch.optim的灵活使用详解(包括重写SGD,加上L1正则)
Feb 20 Python
Django全局启用登陆验证login_required的方法
Jun 02 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 disk_free_space 返回目录可用空间
2010/05/10 PHP
PHP变量的定义、可变变量、变量引用、销毁方法
2013/12/20 PHP
php检查字符串中是否包含7位GSM字符的方法
2015/03/17 PHP
php轻量级的性能分析工具xhprof的安装使用
2015/08/12 PHP
thinkPHP实现多字段模糊匹配查询的方法
2016/12/01 PHP
点击下载链接 弹出页面实现代码
2009/10/01 Javascript
Javascript 去除数组的重复元素
2010/05/04 Javascript
JQuery跨Iframe选择实现代码
2010/08/19 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(二)人物行走的实现
2013/01/23 Javascript
jQuery标签替换函数replaceWith()的使用例子
2014/08/28 Javascript
jQuery实现在下拉列表选择时获取json数据的方法
2015/04/16 Javascript
jQuery绑定事件on()与弹窗的简要概述
2016/04/27 Javascript
knockoutjs动态加载外部的file作为component中的template数据源的实现方法
2016/09/01 Javascript
jQuery实现文档树效果
2017/02/20 Javascript
JS实现留言板功能
2017/06/17 Javascript
基于ionic实现下拉刷新功能
2018/05/10 Javascript
layui表单提交到后台自动封装到实体类的方法
2019/09/12 Javascript
jquery绑定事件 bind和on的用法与区别分析
2020/05/22 jQuery
基于javascript处理二进制图片流过程详解
2020/06/08 Javascript
[01:34]2016国际邀请赛中国区预选赛IG战队教练采访
2016/06/27 DOTA
[15:20]DOTA2亚洲邀请赛总决赛开幕式表演:羽泉献唱
2017/04/05 DOTA
python使用urllib2实现发送带cookie的请求
2015/04/28 Python
python中enumerate函数遍历元素用法分析
2016/03/11 Python
详解如何在python中读写和存储matlab的数据文件(*.mat)
2018/02/24 Python
对Python3中bytes和HexStr之间的转换详解
2018/12/04 Python
python爬虫爬取笔趣网小说网站过程图解
2019/11/18 Python
tensorflow安装成功import tensorflow 出现问题
2020/04/16 Python
Pycharm导入anaconda环境的教程图解
2020/07/31 Python
使用layui框架实现点击左侧导航切换右侧内容且右侧选项卡跟随变化的效果
2020/11/10 HTML / CSS
手工制作的豪华英式沙发和沙发床:Willow & Hall
2019/05/03 全球购物
日本航空官方网站:JAL
2019/06/19 全球购物
高中语文教学反思
2014/01/16 职场文书
小学毕业感言50字
2014/02/16 职场文书
软件项目经理岗位职责
2015/04/01 职场文书
2015年教研工作总结
2015/05/23 职场文书
高一化学教学反思
2016/02/22 职场文书