1.3 Pythonのfor文とwhile文をやさしく解説|ループ処理の基本から応用まで

1.3 繰り返し処理(for, while)

プログラムの中には「何度も同じ処理を繰り返す」必要がある場面がよくあります。例えば、リストの中身を1つずつ表示したり、条件を満たすまで処理を続けたりするケースです。

そのような処理は ループ(繰り返し) と呼ばれ、Pythonでは主に forwhile を使って記述します。

for文:コレクションの中身を順番に処理する

for 文は、リストや文字列などの「イテラブル(繰り返せるもの)」の要素を、1つずつ順番に処理します。

fruits = ["apple", "banana", "orange"]

for fruit in fruits:
    print(fruit)

上記のコードは、リスト fruits の中身を1つずつ fruit に代入して、表示します。

range() 関数で数値の繰り返し

for i in range(5):
    print(i)

range(5)0, 1, 2, 3, 4 のように、0から始まる連続した整数を返します。

  • range(5) → 0〜4(5未満)
  • range(2, 6) → 2〜5
  • range(0, 10, 2) → 偶数(0,2,4,...)

while文:条件を満たす間ずっと繰り返す

while 文は、「条件が True の間」ずっと繰り返します。

x = 0

while x < 3:
    print(x)
    x += 1

上の例では x が3未満の間、print を繰り返します。条件が False になるとループは終了します。

無限ループと break

while True:
    command = input("終了するには q を入力:")
    if command == "q":
        break

while True は無限ループを作りますが、break 文で強制的に抜けることができます。

ループ制御:continue と else

  • continue:その回の処理をスキップして次の繰り返しへ
  • else:ループが正常終了したときに実行される
for i in range(5):
    if i == 2:
        continue
    print(i)
else:
    print("ループ終了")

else はあまり知られていませんが、ループが break で中断されなかったときに実行される補足処理として使えます。

for は「回数が決まっている繰り返し」、while は「条件が続く限りの繰り返し」に向いています。それぞれの用途を意識しながら使い分けると、Pythonの制御構造を自在に使えるようになります。

次のセクションでは、複数の値をまとめて扱える「コレクション型」について学びます。

2025-01-09

下田 昌平

開発に関するインプットをアウトプットしています。