【Python第5回】繰り返し処理:for文とwhile文

Python基礎講座 全10回(第5回)

【Python第5回】繰り返し処理:for文とwhile文

同じ処理を何度も繰り返すループ処理を習得します。Pythonにおける最も代表的な繰り返し手法である「for文」と、一定の条件に基づいて動き続ける「while文」を解説します。

📌 Python講座ロードマップ一覧(クリックで移動)

1. リストの要素を順に処理する for 文

Pythonで繰り返しを行う際、最も使用頻度が高いのが `for文` です。

`for 変数 in リスト:` と記述することで、リストの最初から最後まで、データが変数に順番に代入されながらループが実行されます。if文と同様に、末尾のコロン `:` と、中身の「インデント」を忘れずに書いてください。

2. 指定回数のループを回す range 関数

「3回繰り返す」のように、特定の回数だけ処理を行いたい時は、`range()` という便利な機能と組み合わせます。

`range(5)` と指定すると、`0, 1, 2, 3, 4` という5つの数値が自動生成されます。プログラミングの「0から開始する」法則に基づき、1から5ではなく、0から開始した5つの数字となる点に注目してください。

3. 条件が成立する間繰り返す while 文

「回数」が決まっておらず、「条件を満たしている間はずっと繰り返す」という時には `while文` を使います。

`while 条件式:` と記述し、条件式の結果が `True` である限り、インデントされた処理をループ実行し続けます。

4. さまざまな繰り返しを実行するコード

以下のコードは、リストの読み出し、指定回数のループ、および数値が10に達するまでカウントアップするwhile文の実行コードです。

loops.py
# 1. リストの要素ループ
animals = ["イヌ", "ネコ", "ウサギ"]
for animal in animals:
    print(animal)  # イヌ、ネコ、ウサギが順に表示される

# 2. range() による5回のループ
for i in range(3):
    print("こんにちは!")  # 3回出力される

# 3. while による条件ループ
count = 0
while count < 3:
    print(count)
    count = count + 1  # countを1増やして無限ループを防ぐ

⚠️ 注意:無限ループ(Infinite Loop)の回避

while文を使う際、ループの中で条件式を `False` に切り替える処理(例:変数を加算する記述など)を書き忘れると、プログラムが永遠に終了しない「無限ループ」に陥ってパソコンがフリーズしてしまいます。必ずループを抜ける仕掛けを内包させてください。

✍️ 第5回 理解度チェック(問題)

Pythonで指定した任意の回数(例: 10回)のループをfor文で簡単に回すために、`for i in …` の後ろに組み合わせて使用する、連続する数値を生成する便利な関数名は何でしょうか?

※この問題の解答と解説は、ページ最下部(まとめの前)に掲載しています。

5. まとめと次回予告

第5回の講義はお疲れ様でした!今回の重要ポイントを振り返りましょう。

  • `for 変数 in 配列:` でリストなどの要素を最初から最後まで順番に取得してループできる。
  • 指定回数の繰り返しには `range(回数)` を組み合わせて記述する。
  • `while 条件:` は条件が True の間動き続け、無限ループを回避する処理が必須である。

次回(第6回)は、よく使う複数の命令を1つのまとまりとして定義し、再利用しやすくするプログラミングに必須の概念「関数の定義と引数・戻り値」について学びます。お楽しみに!

🔑 第5回 理解度チェックの解答と解説

【解説】

正解は **`range`** (または `range()`)です。 `range(10)` と指定すると、`0` から `9` までの計10個のインデックス番号を順番に生成し、forループで任意の処理を10回繰り返して実行することができます。