0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Python】Python 制御フロー(Control Flow)を完全に理解する

Last updated at Posted at 2025-11-16

はじめに

プログラムが「どの道を選ぶか」を決めるのが制御フロー。
これはまるでゲームの分岐シナリオのように、あなたのコードに“意思”を与える仕組みです。

Python の制御フローは、
「条件分岐」+「繰り返し」+「補助キーワード」
の3本柱で構成されています。

では順番に見ていきましょう。


1. 条件分岐:if / elif / else

Python の if はとても自然な文体で書けます。
次のように“真偽”で処理を分岐します。

x = 10

if x > 10:
    print("10 より大きい")
elif x == 10:
    print("ちょうど 10")
else:
    print("10 より小さい")

ポイント

  • Python は {} の代わりに インデント でブロックを表す
  • elif は何個でも OK
  • else は省略可能

「読みやすさ最優先」の Python らしい書き方です。


2. 繰り返し:while 文

while 条件: が真の間、ループが続きます。

count = 0

while count < 3:
    print("カウント:", count)
    count += 1

⚠️ 無限ループに注意

条件がずっと True だと永遠に終わりません。


3. 繰り返し:for 文

Python の for は「回数指定」ではなく
“対象を1つずつ取り出して処理” するタイプです。

リストを回す

for item in ["a", "b", "c"]:
    print(item)

range とセットで使う

for i in range(5):  # 0〜4
    print(i)

ポイント

  • range(start, stop, step) で細かく指定可能
  • Python の for は「イテレータ」ベース

4. break / continue

ループの流れをカスタマイズするためのキーワード。

break → ループを抜ける

for i in range(10):
    if i == 3:
        break
    print(i)

continue → 次の周へスキップ

for i in range(5):
    if i == 2:
        continue
    print(i)

ロジックの最適化でめちゃくちゃ使うやつです。


5. for / while の “else”

Python 独自の珍しい仕様。
「ループが 正常に終わった時だけ 実行されるブロック」です。

for i in range(3):
    print(i)
else:
    print("break が無かったので実行される")

❗ ここが重要

  • break があると else は 実行されない
  • “毎回の else” ではなく “ループ終了時の else”

検索処理などで便利。


6. 条件式(三項演算子)

一行で if を書きたいとき。

age = 20
label = "成人" if age >= 18 else "未成年"
print(label)

短くスッキリ、Pythonic な書き方。


7. pass(何もしない)

“あとで書くよ” のための占位子。

def todo():
    pass

書きかけの関数や class、条件分岐などに使えます。


8. 実戦例:リスト内に値があるか探す

Python の制御フローが全部入りの例。

nums = [4, 7, 1, 3, 9]

target = 3
found = False

for n in nums:
    if n == target:
        print("見つかった!")
        found = True
        break
else:
    print("見つからなかった…")

使ったもの:
✔ for
✔ if
✔ break
✔ else


9. Pythonic:もっと短く書くなら

Python にはもっと優雅な書き方もあります。

nums = [4, 7, 1, 3, 9]
target = 3

print("見つかった!" if target in nums else "見つからなかった…")

まとめ

Python の制御フローは、直感的で読みやすく、かつ強力。

  • if / elif / else(条件分岐)
  • for / while(繰り返し)
  • break / continue(制御)
  • ループの else(Python 独自)
  • 三項演算子
  • pass

この6種類を覚えるだけで、
ほぼすべての Python のロジックが書けるようになります。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?