目錄
回复内容:
首頁 後端開發 Python教學 如何在Python中使用break跳出多层循环?

如何在Python中使用break跳出多层循环?

Jun 06, 2016 pm 04:23 PM
break continue loop

1

2

3

4

5

6

7

8

9

10

<span class="k">for</span> <span class="n">a</span> <span class="ow">in</span> <span class="nb">xrange</span><span class="p">(</span><span class="mi">10</span><span class="p">):</span>

    <span class="k">for</span> <span class="n">b</span> <span class="ow">in</span> <span class="nb">xrange</span><span class="p">(</span><span class="mi">20</span><span class="p">):</span>

        <span class="k">if</span> <span class="n">something</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">b</span><span class="p">):</span>

            <span class="c"># Break the inner loop...</span>

            <span class="k">break</span>

    <span class="k">else</span><span class="p">:</span>

        <span class="c"># Continue if the inner loop wasn't broken.</span>

        <span class="k">continue</span>

    <span class="c"># Inner loop was broken, break the outer.</span>

    <span class="k">break</span>

登入後複製

回复内容:

我又有些忍不住要说了……你们学python是从来不看官方文档,只是跟着某某某中文教程一路撸下去的么?

Python的循环体自己就有else分支!
Python的循环体自己就有else分支!
Python的循环体自己就有else分支!

不只是if有,while和for都有else分支。循环体的else分支触发条件是循环正常结束。如果循环内被break跳出,就不执行else。所以这个逻辑是:如果循环内break了,不触发else,则执行下一句外层循环中的break;如果正常结束,执行else分支里的continue,直接跳转到外层循环的下一轮,跳过了第二个break。

不过这写法真尼玛丑啊……搞个布尔量会死么……

————————

其实感觉比较正确的姿势应该是拿个函数包起来然后用return…… 抛个异常外面接着不就完了 for和while的else子句用于循环后处理,仅在循环正常结束时执行。

问题中所举的例子,设置一个flag变量,代码看起来会更直观一些。

难说哪种写法好,我倒挺喜欢用else分支的。
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

continue是跳出目前循環還是所有循環 continue是跳出目前循環還是所有循環 Feb 02, 2023 pm 04:20 PM

continue是跳出目前循環還是所有循環

在 Microsoft Loop 協作平台中,如何利用 AI Copilot 進行協作? 在 Microsoft Loop 協作平台中,如何利用 AI Copilot 進行協作? Nov 18, 2023 pm 01:33 PM

在 Microsoft Loop 協作平台中,如何利用 AI Copilot 進行協作?

如何下載和使用微軟循環 如何下載和使用微軟循環 May 08, 2023 pm 01:16 PM

如何下載和使用微軟循環

PHP中continue關鍵字的作用與使用方法 PHP中continue關鍵字的作用與使用方法 Jun 28, 2023 pm 08:07 PM

PHP中continue關鍵字的作用與使用方法

Go語言break停止語句有什麼用 Go語言break停止語句有什麼用 Jan 18, 2023 pm 03:46 PM

Go語言break停止語句有什麼用

PHP會傳回數組中所有值的總和 PHP會傳回數組中所有值的總和 Mar 21, 2024 pm 01:07 PM

PHP會傳回數組中所有值的總和

JS循環學習:跳出迴圈語句break和continue JS循環學習:跳出迴圈語句break和continue Aug 03, 2022 pm 07:08 PM

JS循環學習:跳出迴圈語句break和continue

php裡面break的用法是什麼 php裡面break的用法是什麼 Jan 31, 2023 pm 07:33 PM

php裡面break的用法是什麼

See all articles