ループは同じ処理を何度も実行するための仕組みですが、実際のプログラムではある条件を満たしたら繰り返しをやめたいという場面が多くあります。 そんなときに活躍するのがbreak文です。
break文を使うと、ループがまだ終わっていなくても、その場で強制的にループを終了できます。 この記事では、Python初心者の方にもわかりやすいように、break文の基本から応用までを具体例とともに解説します。
まずはシンプルな例から見てみましょう。 次のプログラムでは、1から10までの数字を順番に表示しますが、数字が5になったところでループを強制的に止めています。
for i in range(1, 11):
if i == 5:
break # iが5になったらループを中断
print(i)
このコードの動きを説明すると、最初にfor i in range(1, 11)
によって、1から10までの数が順番にiに代入されていきます。
次に、if i == 5
という条件分岐で「もしiが5だったら」という確認が行われます。
その条件が真になった瞬間、break文が実行されてループが終了します。 したがって、print(i)によって画面に表示されるのは1から4までの数字だけで、5以降は表示されません。
実際に実行すると、出力結果は次のようになります。
1
2
3
4
5は出力されず、ループが終了しています。
break文はforループだけでなく、whileループでも同じように使えます。 よくある例として、ユーザーからの入力を繰り返し受け取り、特定の文字を入力したときだけループを終了するという処理があります。
while True:
user_input = input("何か入力してください('exit'で終了): ")
if user_input == 'exit':
break # ユーザーが'exit'と入力したらループを中断
print(f"あなたの入力: {user_input}")
このプログラムでは、まずwhile True:
によって無限ループが始まります。
本来ならこのループは永遠に続いてしまいますが、ユーザーがexitと入力した瞬間にbreak文が働き、ループが終了します。
それまでは入力された内容がそのまま表示される仕組みです。実際に動かしてみると、何度も入力を受け付けてくれる一方で、exitと入力するとすぐに終了することが確認できます。
学んだことをより深く理解するには、実際に手を動かしてコードを書いてみることが大切です。 ここでいくつかの練習問題をやってみましょう。
【問題】1から20までの数字を出力するforループを作成し、数字が10になったらループを中断してください。
サンプルコードは以下の通りです。
for i in range(1, 21):
if i == 10:
break
print(i)
このコードを実行すると、1から9までが表示され、10に達した時点で終了します。
【問題】ユーザーから入力を受け取るwhileループを作成し、入力がstopだった場合にループを終了してください。また、終了時には何回入力されたかを表示するようにしてください。
サンプルコードはこちらです。
count = 0
while True:
user_input = input("何か入力してください('stop'で終了): ")
if user_input == 'stop':
break
count += 1 # 入力された数をカウントする
print(f"入力された数: {count}")
実際に試すと、stopと入力するまで何度でも入力でき、最後に合計の入力回数が表示されます。
Pythonのbreak文は、ループを柔軟にコントロールするための強力な機能です。 無限ループを止めたり、特定の条件を満たしたら処理を終了させたりする場面で非常に便利です。
初心者の方は、まずはシンプルなforループやwhileループに組み込んで試してみましょう。 慣れてくると、ユーザー入力やファイル処理、データ検索など、さまざまな場面でbreak文を活用できるようになります。
効率的で分かりやすいコードを書くために、ぜひ積極的に使ってみてください。