break は「緊急脱出ボタン」なので、実務的なコードでもよく登場します。ここでは ファイル処理 と 検索アルゴリズム の場面での具体例を紹介します。
ファイル処理での break
例1: ファイルを1行ずつ読み込み、特定のキーワードが出たら終了
with open("log.txt", "r", encoding="utf-8") as f:
for line in f:
if "ERROR" in line: # エラー行を見つけたら
print("エラーを検出:", line.strip())
break # ここで探索終了
Python- ポイント: 大きなログファイルを全部読む必要がなく、最初のエラーで処理を打ち切れる。
- メリット: 無駄な読み込みを避けて効率化。
例2: ユーザー入力でファイル書き込みを途中終了
with open("memo.txt", "w", encoding="utf-8") as f:
while True:
text = input("メモを入力('end'で終了): ")
if text == "end":
break
f.write(text + "\n")
Python- ポイント: ユーザーが「end」と入力したら書き込みを終了。
- メリット: 無限ループを安全に制御できる。
検索アルゴリズムでの break
例3: 線形探索(リストから値を探す)
data = [12, 45, 67, 23, 89, 34]
target = 23
for i, val in enumerate(data):
if val == target:
print(f"{target} をインデックス {i} で発見!")
break
else:
print("見つかりませんでした")
Python- ポイント: 見つけた瞬間に探索終了。
else付き: 最後まで探しても見つからなかった場合を簡潔に書ける。
例4: 二分探索(途中で見つかったら終了)
data = sorted([12, 45, 67, 23, 89, 34])
target = 67
low, high = 0, len(data) - 1
while low <= high:
mid = (low + high) // 2
if data[mid] == target:
print(f"{target} をインデックス {mid} で発見!")
break
elif data[mid] < target:
low = mid + 1
else:
high = mid - 1
else:
print("見つかりませんでした")
Python- ポイント: 二分探索でも「見つかったら即終了」に
breakが活躍。 - メリット: 探索効率が高く、不要なループを避けられる。
実務での活用シーンまとめ
- ファイル処理: ログ解析、ユーザー入力の終了条件。
- 検索アルゴリズム: 線形探索や二分探索で「見つかったら即終了」。
- その他: ネットワーク通信の監視、データストリーム処理、ゲームの終了判定など。
💡 こうした「見つけたら終わり」「条件が来たら即終了」という場面は、プログラミングのあらゆる分野で登場します。


