Pythonの繰り返し処理:for文とwhile文の使い分け

プログラミングの真骨頂は「繰り返し処理」です。同じ処理を何度も書く代わりに、ループを使えば1回のコードで何百回でも実行できます。今日は2つの繰り返し処理、for文while文を学びました。

for文:リストやデータを順番に処理する

for文は、リストや辞書の要素を順番に取り出して処理するときに使います。

基本構文

構文: for 変数名 in リスト名:

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

for fruit in fruits:
    print(fruit)

# 出力:
# apple
# banana
# orange

リストの要素が1つずつ変数 fruit に代入され、処理が繰り返されます。

重要な注意点

1. コロン : を忘れずに

# ❌ エラー
for fruit in fruits
    print(fruit)

# ✅ 正しい
for fruit in fruits:
    print(fruit)

2. インデントを揃える

Pythonでは、インデント(字下げ)がコードのブロックを示します。

# ✅ 正しい
for fruit in fruits:
    print(fruit)
    print("おいしい")

# ❌ エラー(インデントがバラバラ)
for fruit in fruits:
    print(fruit)
  print("おいしい")

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

while文は、条件が真(True)である限り処理を繰り返す構文です。

基本構文

構文: while 条件:

count = 0

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

# 出力:
# カウント: 0
# カウント: 1
# カウント: 2

count < 3 が真である限り、処理が繰り返されます。

while文の注意点:無限ループ

while文で最も注意すべきは、無限ループです。

# ❌ 無限ループの例
count = 0

while count < 3:
    print(f"カウント: {count}")
    # count += 1 を忘れると、countが永遠に0のまま

# countが増えないので、条件が永遠に真のまま → 無限ループ

対策: 必ずループ内で条件を変更する変数を更新すること。

break:繰り返し処理を強制終了

break を使うと、ループを途中で終了できます。

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

# 出力: 0 1 2 3 4
# 5になった時点でループを抜ける

条件を満たしたら即座にループを終了したい場合に便利です。

continue:特定の周だけスキップ

continue を使うと、その周の処理だけスキップして次の周に進みます。

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

# 出力: 0 1 3 4
# 2のときだけprint()がスキップされる

特定の条件のときだけ処理を飛ばしたい場合に使います。

for文とwhile文の使い分け

for文を使うべきとき

  • リストや範囲が決まっている
  • 繰り返し回数が明確
  • 例: リストの全要素を処理

while文を使うべきとき

  • 条件が満たされるまで繰り返す
  • 繰り返し回数が不明
  • 例: ユーザーが正しい入力をするまで繰り返す

今日の学びのポイント

  • for文: データを順番に取り出して処理(for 変数名 in リスト名:
  • while文: 条件が真の間繰り返す(while 条件:
  • コロンインデントを忘れずに
  • break: ループを強制終了
  • continue: その周だけスキップ
  • while文では無限ループに注意

繰り返し処理は、プログラミングの効率を劇的に上げるツールです。for文とwhile文を使い分けられるようになれば、より複雑な処理も簡単に書けるようになります。


コメント