打破巢狀循環:更簡潔的解決方案
雖然拋出異常可以提供一種提前退出嵌套循環的方法,但它並不是始終是最理想的方法。幸運的是,Python 提供了替代方法來實現此目的,而無需訴諸異常。
一個優雅的解決方案涉及利用 break 和 continue 關鍵字:
<code class="python">for x in range(10): for y in range(10): print(x * y) if x * y > 50: break else: continue # only executed if the inner loop did NOT break break # only executed if the inner loop DID break</code>
break 語句立即退出最內層循環,而continue 語句繼續執行外循環的下一個迭代。這允許根據特定條件精確控制循環終止。
這個方法也可以擴展到更深的巢狀循環:
<code class="python">for x in range(10): for y in range(10): for z in range(10): print(x, y, z) if (x * y * z) == 30: break else: continue break else: continue break</code>
在此程式碼中,當滿足條件 (x * y * z) == 30。透過仔細組合 Break 和 continue 語句,您可以在多層迴圈中建立複雜的控制流。這提供了一種更乾淨、更可維護的方式來在必要時退出嵌套循環。
以上是如何在 Python 中優雅地退出嵌套循環?的詳細內容。更多資訊請關注PHP中文網其他相關文章!