Pythonのループ制御:continue
、pass
、break
の違い
プログラミングにおいて、ループはコードの一部を繰り返し実行するために使われます。Pythonでは、continue
、pass
、break
という3つのステートメント(実行文みたいな感じ)を使用してループの挙動を制御できます。これらのステートメントは似ているようでいて、使い方に大きな違いがあります。私がPythonを学び始めて最初につまづいた場所はここでした。ここでは、これらの違いを初心者にもわかりやすく説明します。
continue
continue
ステートメントは、ループの現在の反復を中止し、次の反復に進みます。この命令は、特定の条件下でループの残りの部分をスキップしたい場合に便利です。
for i in range(10):
if i % 2 == 0:
continue
print(i) # この行は偶数時には実行されない
上の例では、iが偶数の場合、print(i)の行は実行されず、ループは次の数値に進みます。
pass
pass
は「何もしない」操作です。このステートメントは、文法的にステートメントが必要な場所で、何も実行しないプレースホルダーとして機能します。プログラムの流れには影響を与えません。
for i in range(10):
if i % 2 == 0:
pass
print(i) # すべての数値が出力される
passが使用されている場合でも、ループの全ての部分が実行されます。
break
break
ステートメントは、ループから完全に脱出するために使用されます。特定の条件が満たされたときにループを終了させたい場合に有用です。
for i in range(10):
if i == 5:
break
print(i) # 0から4までが出力され、5以降は出力されない
上の例では、iが5に達すると、ループが完全に終了します。
まとめ
continue
は現在のループの反復をスキップします。
pass
は文法的にステートメントが必要な場所で「何もしない」ために使用します。
break
はループから完全に脱出するために使用します。
参考資料