プログラミング

Python超入門④ while文とfor文で処理を繰り返そう

Pythonのwhile、for、range、break、continueを使い、同じ処理を安全に繰り返します。

第4回では、同じ処理を繰り返すwhile文とfor文を学びます。

while文

count = 1

while count <= 5:
    print(count)
    count += 1

countが5以下である間、処理を繰り返します。

count += 1は、count = count + 1を短く書いたものです。この行を忘れると、条件が変わらず無限ループになるので注意します。

for文とrange

回数が分かっている場合は、for文とrangeを使えます。

for number in range(1, 6):
    print(number)

range(1, 6)は1、2、3、4、5を作ります。最後の6は含まれません。

リストを順番に読む

names = ["Aoi", "Ren", "Mio"]

for name in names:
    print(f"こんにちは、{name}さん")

リストの値が一つずつnameへ入ります。

breakとcontinue

breakは繰り返しを途中で終了します。

while True:
    command = input("終了するならq: ")

    if command == "q":
        break

continueは、その回の残りを飛ばして次へ進みます。

for number in range(1, 6):
    if number == 3:
        continue
    print(number)

このコードでは3だけ表示されません。

while文とfor文の使い分け

場面 向いている書き方
正しい入力が来るまで続ける while
10回繰り返す forとrange
リストを順番に読む for

小さな練習

for文とrangeを使い、1から100までの合計を求めてください。

最初にtotal = 0を用意し、繰り返すたびにnumberを足します。

模範解答

total = 0

for number in range(1, 101):
    total += number

print(total)

解説

rangeでは終了値の1つ手前までが作られるため、100を含めるには終了値を101にします。total += numbertotal = total + numberを短く書いたものです。結果は5050になります。

まとめ

  • while文は、条件が正しい間繰り返します。
  • for文は、回数や値の集まりを順番に処理するときに便利です。
  • rangeの最後の数字は含まれません。

前の記事:Python超入門③ if文で処理を分けよう

次の記事:Python超入門⑤ 関数を作ろう

← 記事一覧へ戻る