多重ループはプログラムでよく使用される構造ですが、制御フローを正確に制御することが重要です。
そのためには、break
とcontinue
ステートメントを使いこなす必要があります。
以下に、Pythonの多重ループでのbreak
とcontinue
の使い方について解説します。
なお、単純なbreak
とcontinue
の使い方についての解説はこちらの記事が参考になります。
breakステートメントの使い方
break
ステートメントは、ループ内で特定の条件が満たされた場合にループを中断するために使用します。
多重ループの場合、最も内側のループが中断されます。
以下は、二重ループを使用して特定の条件が満たされた場合にループを中断する例です。
for i in range(5):
for j in range(5):
if j == 3:
break
print(f'i: {i}, j: {j}')
上記のコードでは、j == 3
の場合に内側のループが中断されます。
この結果、j
の値が3のときにi
の値は変化せず、ループが次の値に進みます。
i: 0, j: 0
i: 0, j: 1
i: 0, j: 2
i: 1, j: 0
i: 1, j: 1
i: 1, j: 2
i: 2, j: 0
i: 2, j: 1
i: 2, j: 2
i: 3, j: 0
i: 3, j: 1
i: 3, j: 2
i: 4, j: 0
i: 4, j: 1
i: 4, j: 2
上のように、jの値は「0~2」で終わっていますね。
continueステートメントの使い方
continue
ステートメントは、特定の条件が満たされた場合に、現在のループの残りの部分をスキップして次のループに進むために使用します。
以下は、二重ループを使用して特定の条件が満たされた場合にループをスキップして次のループに進む例です。
for i in range(5):
for j in range(5):
if j == 3:
continue
print(f'i: {i}, j: {j}')
上記のコードでは、j == 3
の場合にcontinue
ステートメントが実行され、現在のループの残りの部分がスキップされます。
その結果、j
の値が3のときには該当のループがスキップされ、次のj
の値に進みます。
i: 0, j: 0
i: 0, j: 1
i: 0, j: 2
i: 0, j: 4
i: 1, j: 0
i: 1, j: 1
i: 1, j: 2
i: 1, j: 4
i: 2, j: 0
i: 2, j: 1
i: 2, j: 2
i: 2, j: 4
i: 3, j: 0
i: 3, j: 1
i: 3, j: 2
i: 3, j: 4
i: 4, j: 0
i: 4, j: 1
i: 4, j: 2
i: 4, j: 4
上のように、jの値は「3の場合のみ」スキップされていますね。
breakとの違いは理解できましたでしょうか?
注意点
これらのテクニックを使いこなすことで、多重ループでの制御フローをスムーズに処理することができます。
ただし、適切な条件やループの順序を設定することが重要です。誤った使い方は思わぬバグや予期せぬ結果を引き起こすことがありますので注意してください。
まとめ
今回はPythonの多重ループでのbreak
とcontinue
ステートメントの使い方について解説しました。
これらのテクニックをマスターすると、より効率的なプログラミングが可能になります。
初心者の方でも是非取り組んでみてください。
今後もPythonを中心としたプログラミングの情報をお届けします。
以下のメルマガにご登録頂くと、不定期に配信をお届けします。
ぜひ購読してください!
それでは、ステキなPythonライフを!
Pythonについて詳しく知りたいという方は、こちらの書籍もおススメです。