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 相关文章推荐
安装dbus-python的简要教程
May 05 Python
python语言使用技巧分享
May 31 Python
python爬取网页转换为PDF文件
Jun 07 Python
Django实现学员管理系统
Feb 26 Python
Python日期时间Time模块实例详解
Apr 15 Python
用Q-learning算法实现自动走迷宫机器人的方法示例
Jun 03 Python
通过python改变图片特定区域的颜色详解
Jul 15 Python
python 标准差计算的实现(std)
Jul 29 Python
使用批处理脚本自动生成并上传NuGet包(操作方法)
Nov 19 Python
python 实现查询Neo4j多节点的多层关系
Dec 23 Python
pytorch加载自定义网络权重的实现
Jan 07 Python
详解python的super()的作用和原理
Oct 29 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
xml+php动态载入与分页
2006/10/09 PHP
PHP实现Socket服务器的代码
2008/04/03 PHP
php db类库进行数据库操作
2009/03/19 PHP
php实现邮件发送并带有附件
2014/01/24 PHP
php多重接口的实现方法
2015/06/20 PHP
四个常见html网页乱码问题及解决办法
2015/09/08 PHP
Laravel5.1框架路由分组用法实例分析
2020/01/04 PHP
永不消失的title提示代码
2007/02/15 Javascript
不错的JS中变量相关的细节分析
2007/08/13 Javascript
JavaScript高级程序设计(第3版)学习笔记13 ECMAScript5新特性
2012/10/11 Javascript
javascript字母大小写转换的4个函数详解
2014/05/09 Javascript
JS中完美兼容各大浏览器的scrolltop方法
2015/04/17 Javascript
jQuery实现动态添加和删除一个div
2015/08/12 Javascript
AngularJS中实现用户访问的身份认证和表单验证功能
2016/04/21 Javascript
JS获取当前页面名称的简单实例
2016/08/19 Javascript
Angular2入门--架构总览
2017/03/29 Javascript
微信小程序商城项目之商品属性分类(4)
2017/04/17 Javascript
node.js中EJS 模板快速入门教程
2017/05/08 Javascript
分析JavaScript数组操作难点
2017/12/18 Javascript
基于vue实现网站前台的权限管理(前后端分离实践)
2018/01/13 Javascript
详解vue静态资源打包中的坑与解决方案
2018/02/05 Javascript
12个提高JavaScript技能的概念(小结)
2019/05/09 Javascript
从零学python系列之数据处理编程实例(一)
2014/05/22 Python
python里对list中的整数求平均并排序
2014/09/12 Python
Python处理CSV与List的转换方法
2018/04/19 Python
Python import与from import使用及区别介绍
2018/09/06 Python
Python3利用Dlib实现摄像头实时人脸检测和平铺显示示例
2019/02/21 Python
Python实现投影法分割图像示例(二)
2020/01/17 Python
Python 开发工具PyCharm安装教程图文详解(新手必看)
2020/02/28 Python
matlab 计算灰度图像的一阶矩,二阶矩,三阶矩实例
2020/04/22 Python
django表单中的按钮获取数据的实例分析
2020/07/31 Python
汽车专业人才自我鉴定范文
2013/12/29 职场文书
《我的第一本书》教学反思
2014/02/15 职场文书
社区母亲节活动记录
2014/03/06 职场文书
学校督导评估方案
2014/06/10 职场文书
《鸡兔同笼》教学反思
2016/02/19 职场文书