Python跳出多重循环的方法示例
作者:竹聿Simon 发布时间:2022-12-18 16:28:26
标签:Python,多重循环
方法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"外重循环完整执行一次。"
来源:https://blog.csdn.net/churximi/article/details/51043595


猜你喜欢
- 一、前言前两篇博客讲解了爬虫解析网页数据的两种常用方法,re正则表达解析和beautifulsoup标签解析,所以今天的博客将围绕另外一种数
- 1.数据和日志文件分开存放在不同磁盘上数据文件和日志文件的操作会产生大量的I/O。在可能的条件下,日志文件应该存放在一个与数据和索引所在的数
- (1)int转strings := strconv.Itoa(i)等价于s := strconv.FormatInt(int64(i), 1
- 如下所示:import osimport shutil#path of imgrpath = 'D:\\BaiduNetdiskDo
- 本文实例讲述了Python微信推送模板消息功能。分享给大家供大家参考,具体如下:官方文档:https://mp.weixin.qq.com/
- 🌌 专注Golang,Python语言,云原生,人工智能领域得博主💜 过去经历的意义在于引导你,而非定义你,💜 只要我们足够努力,任何人都有
- Django中的静态文件夹static在创建好Django项目时默认是没有的,需要我们手动自己去创建,static文件夹里主要存放一些能暴露
- 介绍lambdaPython用于支持将函数赋值给变量的一个操作符 默认是返回的,所以不用再加return关键字,不然会报错result =
- 这是一个使用scrapy的ImagesPipeline爬取下载图片的示例,生成的图片保存在爬虫的full文件夹里。scrapy startp
- 我见朋友可以把数据库的记录显示到列表框里去,挺实用,也想做一个。怎么做啊?这简单,代码和说明如下:dblist.asp<html>
- 先看一下arena_match_index的表结构,大家注意表的索引结构CREATE TABLE `arena_match_index` (
- 1.尽量不要对列名进行函数处理。而是针对后面的值进行处理例如where col1 = -5的效率比where -col1=5的效率要高因为后
- 前言上位机实战开发先放一放,今天来学习一个新的内容—NumPy的使用1 一维数组例:用普通方法生成一维数组num = [0 for i in
- Windows 8 终于发布了,虽然现在可用的只是开发者预览版,好消息是,IE 10 也随着发了,虽然现在还只有Windows 8可用。我们
- 前言最近在写Vue项目的时候,遇到了一个问题,我从A路由使用parmas方式传参跳转到B路由,然后从B路由跳转到C路由,再从C路由返回B路由
- 1、root函数格式root()功能描述返回一个路径串变量应用代码'sample string = c:\intels\jingca
- 通常我们在制作上图的时候,会分别给四个div加上不同的css属性,来实现中间间隔。但我们更希望的是不需要对html标签做标识,直接能通过cs
- 我用 ip=Request.ServerVariables ("
- 人工生命—群集智能—蚁群算法js版前言(摘自网上,代码是自己想出来的)对于普通大众来说,“人工生命”、“群集智能”、“仿生机器人”等等可能是
- 使用python批量修改文本文件编码格式把文本文件的编码格式进行批量幻化,比如ascii, gb2312, utf8等,相互转化,字符集的大