如何有效地打破程式碼中的嵌套循環?

Barbara Streisand
發布: 2024-11-03 12:57:31
原創
789 人瀏覽過

How Can I Efficiently Break Out of Nested Loops in My Code?

打破巢狀循環:一種綜合方法

嵌套循環是一種基本的程式結構,但過早退出它們可能具有挑戰性。在許多語言中,傳統的解決方案涉及拋出異常,這可能會導致程式碼難看。然而,還有更優雅的方法可用。

引入 'break' 和 'else' 結構

一種方法是使用 'break' 和 'else'構造。 「break」語句立即退出它所在的最內層迴圈。 「else」語句放在「for」迴圈之後時,僅當迴圈完成且未遇到「break」時才執行。

例如,當「x」和「y」的乘積超過50 時,以下程式碼會跳出巢狀循環:

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
登入後複製

這種方法可以避免引發異常並提供更清晰的程式碼結構。

對更深循環的擴展

「break」和「else」結構對於更深的循環同樣有效。例如,當「x」、「y」和「z」的乘積等於30 時,以下程式碼將跳出最外層循環:

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  # inner loop did NOT break
        break  # inner loop DID break
    else:
        continue  # middle loop did NOT break
    break  # middle loop DID break
登入後複製

這個優雅的解決方案允許精確控制循環執行,增強程式碼的可讀性和可維護性。

以上是如何有效地打破程式碼中的嵌套循環?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板