ネストされたループからの脱却: よりクリーンなソリューション
例外をスローすると、ネストされたループを途中で終了する方法が提供されますが、そうではありません常に最も望ましいアプローチです。幸いなことに、Python には、例外に頼らずにこれを達成するための代替方法が用意されています。
1 つのエレガントな解決策には、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 中国語 Web サイトの他の関連記事を参照してください。