最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • Python break用法详解

    正文概述    2020-05-26   228

    Python break用法详解

    Python 语言没有提供 goto 语句来控制程序的跳转,这种做法虽然提高了程序流程控制的可读性,但降低了灵活性。为了弥补这种不足,Python 提供了 continue 和 break 来控制循环结构。本节先讲解 break 的用法。

    某些时候,需要在某种条件出现时强行中止循环,而不是等到循环条件为 False 时才退出循环。此时,可以使用 break 来完成这个功能。

    break 用于完全结束一个循环,跳出循环体。不管是哪种循环,一旦在循环体中遇到 break,系统就将完全结束该循环,开始执行循环之后的代码。例如如下程序:

    # 一个简单的for循环
    for i in range(0, 10) :
        print("i的值是: ", i)
        if i == 2 :
            # 执行该语句时将结束循环
            break

    运行上面程序,将看到 i 循环到 2 时即结束,因为当 i 等于 2 时,在循环体内遇到了 break 语句,程序跳出该循环。
    对于带 else 块的 for 循环,如果使用 break 强行中止循环,程序将不会执行 else 块。例如如下程序:

    # 一个简单的for循环
    for i in range(0, 10) :
        print("i的值是: ", i)
        if i == 2 :
            # 执行该语句时将结束循环
            break
    else:
        print('else块: ', i)

    上面程序同样会在 i 等于 2 时跳出循环,而且此时 for 循环不会执行 else 块。

    在使用 break 语句的情况下,循环的 else 代码块与直接放在循环体后是有区别的,即如果将代码块放在 else 块中,当程序使用 break 中止循环时,循环不会执行 else 块;如果将代码块直接放在循环体后面,当程序使用 break 中止循环时,程序自然会执行循环体之后的代码块。

    Python 的 break 语句不能像其他语言一样使用标签,因此它只可以结束其所在的循环,不可以结束嵌套循环的外层循环。

    为了使用 break 语句跳出嵌套循环的外层循环,可先定义 bool 类型的变量来标志是否需要跳出外层循环,然后在内层循环、外层循环中分别使用两条 break 语句来实现。例如如下程序:

    exit_flag = False
    # 外层循环
    for i in range(0, 5) :
        # 内层循环
        for j in range(0, 3 ) :
            print("i的值为: %d, j的值为: %d" % (i, j))
            if j == 1 :
                exit_flag = True
                # 跳出里层循环
                break
        # 如果exit_flag为True,跳出外层循环
        if exit_flag :
            break

    上面程序在内层循环中判断 j 是否等于 i,当 j 等于 i 时,程序将 exit_flag 设为 True,并跳出内层循环;接下来程序开始执行外层循环的剩下语句,由于 exit_flag 为 True,因此也会执行外层循环的 break 语句来跳出外层循环。
    运行上面程序,将看到如下运行结果:

    i的值为: 0, j的值为: 0
    i的值为: 0, j的值为: 1

    程序从外层循环进入内层循环后,当 j 等于 i 时,程序将 exit_flag 设为 True,并跳出内层循环;接下来程序又执行外层循环的 break 语句,从而跳出外层循环。


    起源地下载网 » Python break用法详解

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元