当前位置:首页 » Python入门 » Python中断多种循环的思路小结

Python中断多种循环的思路小结

401°c 2021年04月21日 07:30 Python入门 0条评论
  移步手机端

1、打开你手机的二维码扫描APP
2、扫描左则的二维码
3、点击扫描获得的网址
4、可以在手机端阅读此文章

I. 跳出单循环

无论是什么计算机语言,都是有很有可能会有跳出循环的要求,例如枚举类型时,寻找一个符合条件的数就停止。跳出单循环是非常简单的,例如:

for i in range(10):

  if i > 5:

    print i

    break

殊不知,大家有时会必须跳出多种循环系统,而break只可以跳出一层循环系统,例如:

for i in range(10):

  for j in range(10):

    if i j > 5:

      print i,j

      break

那样的编码并不是说寻找一组 i j > 5就终止,只是持续寻找10组,由于break只跳出了for j in range(10)这一重循环系统。那麼,怎样才能跳出多种呢?在这里纪录备忘录一下。

II. 跳出多种循环系统

实际上,python的规范英语的语法是不兼容跳出多种循环系统的,因此只有运用一些方法,大约的构思有:写出涵数、运用笛卡尔积、运用调节。

自然最常见的构思是应用自变量标识法

def f():

  flag = 0

  for i in range(10):

    for j in range(i):

      if i j>5:

        print i,j

        flag = 1

        break

    if flag == 1:

      break

if __name__ == "__main__":

  f()

写出涵数

python中//,涵数运作到return这一句便会终止,因而能够 运用这一特点,将作用写出涵数,停止多种循环系统。

比如:

def work():

  for i in range(10):

    for j in range(10):

      if i j > 5:

        return i,j

print work()

运用笛卡尔积

这类方式的构思便是,即然能够 跳出单循环,我也将多种循环系统改变为单循环,这能够 运用itertools中的笛卡尔积涵数product,比如:

from itertools import product

for i,j in product(range(10), range(10)):

  if i j > 5:

    print i,j

    break

运用开发者模式

笛卡尔积的方法很恰当,也很简约,但它只有用以每一次循环系统的结合全是单独的情况,倘若各层循环系统都和前一层密切有关,就不能用这类方法了。此刻可以用第一种方式,将它写出涵数,此外,还能够运用开发者模式。这一运用了开发者模式中,只需发生出错就撤出的基本原理,它掩藏了一个不正确出去。

class Found(Exception):

  pass

try:

  for i in range(10):

    for j in range(i): #第二重循环系统跟第一重相关

      if i   j > 5:

        raise Found

except Found:

  print i, j

之上便是汇总python终断多种循环系统的构思的详尽內容,大量请关心大家其他类似文章!

欢迎阅读本文,希望本文对您有所帮助!

本文链接:http://www.cqrxzs.com/3867.html

版权声明:本文为原创文章,版权归 雨凡教育 所有,欢迎分享本文,转载请保留出处!

百度推荐获取地址:http://tuijian.baidu.com/,百度推荐可能会有一些未知的问题,使用中有任何问题请直接联系百度官方客服!

评论(0) 赞助本站

发表评论:


【顶】 【踩】 【好】 【懵】 【赞】 【表情】

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

推荐阅读
04月21日

python完成机器人卡牌

发布 : | 分类 : Python入门 | 评论 : 0人 | 浏览 : 422次

详细介绍 这一事例关键利用turtle库完成依据键入动态性展现不一样智能机器人的图象和属性信息。 编码一部分非原創仅仅干了一丝改动和梳理促使更易阅读文章。 图片和文档資源请浏览git仓库获得:连接详细地址 涉及到下列知识要点: 1.文档载入 2.字典 3.turtle库的应用 4.操纵句子  完成的实际效果 编码 #!/bin/python3 from turtle import * from random import choice screen = Screen() screen.se...

04月21日

Python中断多种循环的思路小结

发布 : | 分类 : Python入门 | 评论 : 0人 | 浏览 : 401次

I. 跳出单循环 无论是什么计算机语言,都是有很有可能会有跳出循环的要求,例如枚举类型时,寻找一个符合条件的数就停止。跳出单循环是非常简单的,例如: for i in range(10): if i > 5: print i break 殊不知,大家有时会必须跳出多种循环系统,而break只可以跳出一层循环系统,例如: for i in range(10): for j in range(10): if i j > 5:...

04月19日

python3 mmh3安装及使用方法

发布 : | 分类 : Python入门 | 评论 : 0人 | 浏览 : 67次

mmh3安装方法 hach方式关键有MD、SHA、Murmur、CityHash、MAC等几类方式。mmh3全过程murmurhash3,是一种非数据加密的hash算法,常见于hadoop等分布式系统情景中,在anaconda中安裝应用指令 pip install mmh3 难题1 出错以下: Microsoft Visual C 14.0 is required 表明缺乏C 14的库文件,挑选登录网站  https://visualstudio.microsoft.com/do...

04月19日

python脚本完成音频m4a格式转成MP3格式的实例代码

发布 : | 分类 : Python入门 | 评论 : 0人 | 浏览 : 64次

序言 群内见到有些人了解:谁会用python将微信音频文件后缀m4a格式转成mp3格式,果断回了句:我能。 随后就私底下找话题了 解决方案详细介绍以下: 专用工具:windows系统软件,python2.7,变换库ffmpeg 安裝ffmpeg库:免费下载相匹配电脑操作系统版本号 https://ffmpeg.zeranoe.com/builds/ 我这里用的是window 64位 这儿因为途径难题,也没有把ffmpeg添加到系统软件系统变量中,因此我就用的是相对路径 C:/Users...

04月19日

python3中的eval和exec的区别与联络

发布 : | 分类 : Python入门 | 评论 : 0人 | 浏览 : 53次

看过许多 在网上的方式,载入文档后打开文件看的确不会再是错码,可是文本文件中读取json时发觉了错码,可能是读文档默认设置的编号格式不对。下边读写能力方式可行。 留意,ensure_ascii=False能够确保不容易以ascii格式编号,确保中文的一切正常变换: import json with open('test.json', 'w', encoding='utf-8') as f: f.write( json.dumps( known_dict,...

04月19日

Django Docker容器化部署之Django-Docker当地部署

发布 : | 分类 : Python入门 | 评论 : 0人 | 浏览 : 66次

本章将在本地搭建一个容器化的 Django 项目,感受 Docker 的运作方式。 前期准备 开发环境 虽然有基于 Windows 的 Docker 版本,但各方面兼容做得都不太好(安装也麻烦些),因此建议读者在学习前,自行安装好 Linux 或 Mac 系统。当然你愿意折腾的话,在 Windows 上搞也行。 别担心,以后开发 Django 项目仍然可以在 Windows 下进行,仅仅是开发时不使用 Docker 而已。 软件安装 Docker:学习 Docker 当然要安装 Docker...

04月19日

python编写猜数字小游戏

发布 : | 分类 : Python入门 | 评论 : 0人 | 浏览 : 64次

文中案例为大伙儿共享了python撰写猜数字小游戏的实际编码,供大伙儿参照,具体内容以下 import random secret = random.randint(1, 30) guess = 0 tries = 0 print("我的名字叫阴径,我有一个密秘数字!") print("数字从1到30,你仅有6次机遇!") while int(guess) != secret and tries < 6: print("你猜猜的数字是?") guess = input() if...

您好,欢迎到访网站!
  查看权限