Pythonのループを抜ける方法にはいくつか種類があり、それぞれ用途や動作が異なります。
ここでは、for
ループとwhile
ループの両方におけるループの抜け方を、基本から応用まで丁寧に解説します。
目次
Pythonのループの基本
Pythonでは以下の2種類のループがよく使われます。
for
ループ:指定回数やイテラブル(リスト、辞書など)に対して繰り返すwhile
ループ:条件が真の間、繰り返す
ループを抜ける基本的な方法
break
文(即座にループを抜ける)
break
を使うと、現在のループの実行を即座に終了して、次の処理へ進みます。
例(for
ループ)
for i in range(10):
if i == 5:
break
print(i)
結果:0 1 2 3 4
例(while
ループ)
count = 0
while True:
if count == 3:
break
print(count)
count += 1
結果:0 1 2
条件が満たされたときにループを終える(while
)
while
ループでは、条件式がFalse
になると自動的に終了します。
x = 0
while x < 3:
print(x)
x += 1
結果:0 1 2
return
文(関数内でループを抜けて関数自体も終了)
ループの中でreturn
を使うと、ループだけでなく関数も終了します。
def find_even(numbers):
for n in numbers:
if n % 2 == 0:
return n
return None
print(find_even([1, 3, 5, 6, 7]))
結果:6
ループを「スキップ」する方法:continue
continue
を使うと、現在のループの1回分の処理をスキップして次に進みます。
for i in range(5):
if i == 2:
continue
print(i)
結果:0 1 3 4
ネストしたループ(ループの中のループ)からの抜け方
break
で内側のループだけを終了
for i in range(3):
for j in range(3):
if j == 1:
break
print(f"i={i}, j={j}")
結果:
i=0, j=0
i=1, j=0
i=2, j=0
応用:else
節を使ったループの終了判定
Pythonのfor
やwhile
には珍しい構文があり、ループが途中でbreak
されず正常終了した場合に限りelse
ブロックが実行されます。
for i in range(5):
if i == 7:
break
else:
print("ループは break されずに最後まで実行されました。")
結果:ループは break されずに最後まで実行されました。
まとめ

方法 | 説明 | よく使う場面 |
---|---|---|
break | ループの途中で抜ける | 特定条件で即終了したい時 |
条件式終了 | while の条件が満たされなくなると自動終了 | 明示的に制御したいとき |
return | 関数ごと抜ける | 関数内の早期終了 |
continue | 1回の処理をスキップして次のループへ | 条件に合わないときスキップ |
else 節 | break されずに終了したときのみ追加の処理が実行される | 特定条件が見つからなかった時など |
フラグ変数 | ネストループで外側まで終了させる | 2重以上のループ |
Pythonのループの制御はとても柔軟で、break
やcontinue
、else
などを組み合わせることで、効率よくかつ読みやすいコードを書くことができます。
以上、Pythonのループの抜け方についてでした。
最後までお読みいただき、ありがとうございました。