Pythonのfor文を途中で抜ける方法

python

Pythonのfor文は、リストや範囲を順番に処理するための強力なツールです。

すべての要素を処理する前に、特定の条件が満たされた時点でループを終了させたい場合があります。

この記事では、for文の中でbreak文を使ってループを抜ける方法を解説します。

スポンサーリンク

方法

for文を途中で終了させたい場合、break文を使います。

break文を使うことで、条件が満たされた時点でループを強制的に終了し、ループの後の処理に進むことができます。

基本構文

for 変数 in イテラブル:
    実行する処理
    if 条件:
        break  # 条件が満たされたらループを終了

1. 基本的なbreak文の例

次の例では、リスト内の要素をループで確認し、要素が “banana” だった時点でループを終了します。

fruits = ['apple', 'banana', 'cherry', 'orange']

for fruit in fruits:
    print(fruit)
    if fruit == 'banana':
        print('Found banana, stopping loop.')
        break  # "banana"を見つけたらループを終了

出力:

apple
banana
Found banana, stopping loop.

2. 数値範囲を扱うループでbreakを使う例

次の例では、for文で数値をループし、特定の条件(数値が3に到達したとき)でループを終了します。

for i in range(10):
    if i == 3:
        print('Reached 3, stopping loop.')
        break
    print(i)

出力:

0
1
2
Reached 3, stopping loop.

3. ネストしたループでbreakを使う例

ネストされたfor文の内側のループだけを終了させたい場合にもbreakを使います。

for i in range(3):
    for j in range(3):
        if j == 2:
            print(f'Stopping inner loop at i={i}, j={j}')
            break  # 内側のループを終了
        print(f'i={i}, j={j}')

出力:

i=0, j=0
i=0, j=1
Stopping inner loop at i=0, j=2
i=1, j=0
i=1, j=1
Stopping inner loop at i=1, j=2
i=2, j=0
i=2, j=1
Stopping inner loop at i=2, j=2

4. elseとbreakの併用

Pythonのfor文には、ループが正常に最後まで実行された場合にのみ実行される else 節があります。

break でループを途中で抜けた場合、else 節は実行されません。

for i in range(5):
    if i == 3:
        print('Break at 3')
        break
    print(i)
else:
    print('Loop completed without break')

出力:

0
1
2
Break at 3

説明:

  • break 文が実行されると、else 節はスキップされます。ループが正常に終了する場合のみ、else の中が実行されます。

まとめ

for文を途中で抜けたいときは、break文を使うことで、特定の条件が満たされた時点でループを強制終了することができます。

break文は、ループの効率を改善したり、不要な処理を避ける際に非常に便利です。

特に、else 節と組み合わせることで、ループが途中で終了したかどうかを簡単に判定することが可能です。

コメント

タイトルとURLをコピーしました