Python | 三重ループ × break × continue の総合理解

Python
スポンサーリンク

初心者が混乱しやすい「三重ループの中で break と continue を使ったときの流れ」を、テキスト図と例題で整理します。ポイントは 「どの階層で使うかによって影響範囲が変わる」 ということです。


総合テキスト図

for A in ...:              # 外側ループ
  for B in ...:            # 中側ループ
    for C in ...:          # 内側ループ
      ├─ 条件が continue → C の残り処理を飛ばして C の次へ
      ├─ 条件が break    → C のループを終了して B の次へ
      └─ 条件なし        → 普通に処理を続ける
    └─ C が終わると B の次へ
  └─ B が終わると A の次へ

👉 重要:

  • continue は「その階層の残り処理をスキップ」
  • break は「その階層のループを終了」
  • どの階層で書いたかによって、飛ばす範囲が変わる

例題1:内側ループで continue と break

for A in range(1, 3):        # A: 1, 2
    for B in range(1, 3):    # B: 1, 2
        for C in range(1, 4):# C: 1, 2, 3
            if C == 2:
                continue      # C==2 のときは飛ばす
            if C == 3:
                break         # C==3 のときは内側ループ終了
            print(f"A={A}, B={B}, C={C}")
Python

出力

A=1, B=1, C=1
A=1, B=2, C=1
A=2, B=1, C=1
A=2, B=2, C=1

👉 流れ:

  • C==2 → その回だけスキップ
  • C==3 → 内側ループを終了して B の次へ

例題2:中側ループで break

for A in range(1, 3):        # A: 1, 2
    for B in range(1, 4):    # B: 1, 2, 3
        if B == 2:
            break             # B==2 のとき中側ループ終了
        for C in range(1, 3):
            print(f"A={A}, B={B}, C={C}")
Python

出力

A=1, B=1, C=1
A=1, B=1, C=2
A=2, B=1, C=1
A=2, B=1, C=2

👉 流れ:

  • B==2 → 中側ループを終了して A の次へ
  • 内側ループ C は実行されない

例題3:外側ループで continue

for A in range(1, 4):        # A: 1, 2, 3
    if A == 2:
        continue              # A==2 のとき外側ループを飛ばす
    for B in range(1, 3):
        for C in range(1, 3):
            print(f"A={A}, B={B}, C={C}")
Python

出力

A=1, B=1, C=1
A=1, B=1, C=2
A=1, B=2, C=1
A=1, B=2, C=2
A=3, B=1, C=1
A=3, B=1, C=2
A=3, B=2, C=1
A=3, B=2, C=2

👉 流れ:

  • A==2 のときは「外側のその回全体」を飛ばす
  • B と C の処理は実行されない

初心者へのまとめポイント

  • continue → 「この回だけスキップ」
  • break → 「この階層のループを終了」
  • どの階層で書いたかがカギ
    • 内側なら「細かい単位」だけ飛ぶ
    • 中側なら「その列」ごと飛ぶ
    • 外側なら「その面」ごと飛ぶ

練習アイデア

  • 「九九表を作るプログラム」で、偶数の段だけスキップ(外側で continue)
  • 「迷路探索」で、見つかったら即終了(内側で break)
  • 「文字列処理」で、特定の文字だけ飛ばす(内側で continue)

👉 こうした「どの階層で使うか」を意識すると、三重ループでも混乱せずに制御できます。

Python
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました