1.繰り返し処理(ループ)とは
繰り返し処理とは、同じ処理を自動で何回も行う仕組み のことです。
<例>
- 1〜10 までの数字を表示
- リストの中身を順番に処理
- 「3回だけ」メッセージを出す
- 入力が正しくなるまで繰り返す
こうした処理を自動化するのが for 文 と while 文 です。
2.for 文(決まった回数の繰り返し)
for 文は「リストや範囲を順番に取り出す」時に使います。
✔ 基本形
for 変数 in 繰り返す対象:
処理
✔ 例:0〜4 を順番に表示
for i in range(5):
print(i)
結果:
0
1
2
3
4
※range(5) は「0~4」を作る特別なオブジェクト。
✔ 例:リストを順番に取り出す
fruits = ["apple", "banana", "orange"]
for f in fruits:
print(f)
✔ 例:インデックス(番号)も取得
for index, item in enumerate(fruits):
print(index, item)
結果:
0 apple
1 banana
2 orange
※enumerate() は リストやタプルをループするときに “番号付き” で取り出せる関数。
()内にリスト等を入れて、forの最初に指定した変数(index)にインデックスを、2つ目に指定した変数(item)にリスト等から取り出した内容を入れる。
3.while 文(条件が True の間繰り返す)
while 文は、回数が決まっていない繰り返しに使います。
✔ 基本形
while 条件:
処理
✔ 例:3 回メッセージを表示
count = 0
while count < 3:
print("Hello")
count += 1
✔ 入力が正しくなるまで繰り返す例
password = ""
while password != "python":
password = input("パスワードを入力: ")
print("ログイン成功!")
※条件が満たされるまで続くため、while内で指定した条件をwhile内で満たせるようにしないと無限ループになって強制終了することになる。
4.break と continue(ループを制御する仕組み)
✔ break:ループを途中で「完全に抜ける」
for n in range(10):
if n == 5:
break #強制的にforループを抜ける
print(n)
結果:0 1 2 3 4
✔ continue:その回だけスキップして続行
for n in range(5):
if n == 2:
continue #nが2になったらprintを飛ばして3にする。
print(n)
結果:0 1 3 4
5.二重ループ(入れ子のループ)
for i in range(3):
for j in range(2):
print(i, j)
※2次元配列等でよく使う仕組み。
6.繰り返しの実例
✔ 1 〜 10 の合計を求める
total = 0
for i in range(1, 11):
total += i
print(total)
✔ リストから特定条件のものだけ取り出す
nums = [1, 5, 7, 2, 8, 3]
for n in nums:
if n > 5:
print(n)
✔ 5回までのプレイヤー入力を許可する(while)
attempts = 0
while attempts < 5:
cmd = input("コマンドを入力: ")
print(f"{cmd} を受け付けました")
attempts += 1
