ループを途中で止める break 文の考え方
はじめてのうちは「ループは最後まで回るもの」と思いがち。でも、実際のプログラムでは「ここでやめたい」瞬間がよくあります。そんなときの緊急脱出ボタンが break です。
基本ルールと直感的なたとえ
- 役割: ループの途中で「今すぐ抜ける」。
- 対象:
forとwhileのどちらでも使える。 - 効果範囲: 実行中の「いちばん内側のループ」だけを抜ける(入れ子なら一段だけ)。
- たとえ: エレベーターで目的の階についたら、それ以上上がらずに降りるイメージ。
まずは体験:while ループでの break
# 目標の数字が出たらゲーム終了
while True: # 条件はずっとTrue。breakで抜ける想定
text = input("0〜9の数字を入力(9で終了): ")
if text == "9":
print("終了します")
break # ここでループを抜ける
print(f"{text} を受け取りました")
Python- ポイント:
while Trueの「無限ループ」は、breakがあるから安全に止められる。 - 使いどころ: ユーザー入力の待機、サーバーの常時監視など「いつ止めるか未定」の処理。
for ループでも使える:探索を早く打ち切る
# リストから「合格」を最初に見つけたら終了
results = ["保留", "不合格", "保留", "合格", "合格"]
for r in results:
if r == "合格":
print("はじめての合格を見つけた!")
break # 見つけた瞬間にループ終了
Python- ポイント: 欲しいものを見つけたら、それ以上探さない。時間の節約になる。
break と continue の違い
for n in range(10):
if n % 2 == 1:
continue # 奇数はスキップして次へ(ループは続く)
if n == 6:
break # 6に来たらここで完全に抜ける
print(n)
Python- 違い:
- continue: その回だけ飛ばして「次のループへ」進む。
- break: ここで「ループ自体を終了」。
ちょっと進んだ使い方:ループの else と組み合わせ
for / while には珍しいけど便利な「else」がある。ループが「break されずに最後まで回ったとき」だけ実行される。
targets = [12, 17, 23, 38]
key = 25
for t in targets:
if t == key:
print("見つかった!")
break
else:
print("最後まで探したけど見つからなかった…") # breakなしで終了したときだけ
Python- メリット: 「見つかったとき」と「見つからなかったとき」を、分岐を増やさずに書ける。
入れ子ループでの注意点
for i in range(3):
for j in range(3):
if j == 1:
break # これは「内側のループ」だけ抜ける
print(f"外側は続く: i={i}")
Python- ポイント:
breakは「一番内側」のループにしか効かない。外側まで抜けたいなら工夫が必要(フラグを使う、関数を抜ける、例外を使うなど)。
よくあるつまずきとコツ
- ラベルがない: Pythonの
breakは「どのループを抜けるか」を指定できない。内側だけ抜ける。 - 抜け忘れ: 無限ループに
breakを入れ忘れると止まらない。終了条件は必ず確認。 - 見通しが悪くなる:
breakを多用しすぎると読みにくい。- コツ: 「早期終了」が分かりやすい場面(エラー時、成功時、終了入力)に限定して使う。
練習問題
- 終了ワードで止めるチャットもどき
- 入力を受け取り、
"bye"が来たらbreak。それ以外はエコー表示。
- 入力を受け取り、
- 最初の偶数を見つけたら終了
- ランダムな整数リストから、最初の偶数を見つけたら表示して
break。見つからなければelseで「なし」を表示。
- ランダムな整数リストから、最初の偶数を見つけたら表示して
- パスワード試行(最大3回)
- 正解が入力されたら即
break。3回失敗したら「ロック」メッセージ。
- 正解が入力されたら即
ヒント(3番の骨格):
SECRET = "python123"
for attempt in range(3):
pwd = input("パスワード: ")
if pwd == SECRET:
print("ログイン成功")
break
else:
print("3回失敗。ロックしました")
Pythonまとめの一言
- 結論:
breakは「ここで終わり!」を明確にするための道具。 - 使いどころ: 検索の打ち切り、エラー・終了入力、成功時の早期終了。
- 指針: 読みやすさを優先して、必要な場所にだけ置く。

