Pythonはシンプルで読みやすい構文を持つプログラミング言語であり、初心者にも学びやすいとされています。その中でも「ループ処理」は、繰り返し処理を実装するために非常に重要な概念です。本記事では、Pythonのforループを中心に、その他のループ(whileループなど)についても分かりやすく解説し、具体的なコード例を交えて紹介します。
1. ループとは?
プログラムにおける「ループ」とは、同じ処理を繰り返し実行する仕組みのことを指します。たとえば、リスト内のすべての要素を順番に表示したり、特定の条件が満たされるまで処理を繰り返したりする場面で使われます。
Pythonには主に以下の2種類のループがあります。
forループ:シーケンス(リスト、タプル、文字列など)を反復するために使われるwhileループ:指定された条件がTrueの間、処理を繰り返す
2. forループの基本
Pythonのforループは、リストやタプル、文字列などのイテラブル(反復可能)なオブジェクトの要素を順番に処理するために使われます。
2.1 基本的な構文
for 変数 in イテラブル: 処理
この構文では、イテラブル(リストやタプルなど)の各要素が変数に代入され、ブロック内の処理が実行されます。
2.2 forループの例
(1) リストを使ったforループ
fruits = ["三田真鈴", "五十嵐清華", "天乃のあ"] for fruit in fruits: print(fruit)
fruitsの要素を1つずつ取り出してprint()で表示しています。forループword = "Python" for char in word: print(char)
文字列もイテラブルなオブジェクトなので、forループを使って1文字ずつ処理できます。
(3) range()関数を使ったループ
Pythonのrange()関数を使うと、一定範囲の数値を生成してループ処理を行えます。
for i in range(5): print(i)
ここではrange(5)が0から4までの整数を生成し、順番に表示しています。
3. whileループの基本
whileループは、条件がTrueの間、処理を繰り返すループです。
3.1 基本的な構文
while 条件:
処理
条件がTrueである限り、ループが継続します。
3.2 whileループの例
count = 0 while count < 5: print(count) count += 1
このコードでは、変数countが5未満の間はループが実行され、毎回countの値を1ずつ増やしています。
4. forループとwhileループの違い
| 比較項目 | forループ | whileループ |
|---|---|---|
| 繰り返し回数 | イテラブルの要素数に依存 | 条件がTrueの間、無制限に実行 |
| 主な用途 | リスト、文字列、範囲の反復処理 | 条件に基づいた繰り返し |
| 使用例 | リスト内の全要素を処理 | ユーザーの入力待ちなど |
どちらを使うかはケースバイケースですが、決まった回数繰り返す場合はforループ、条件を満たす限り繰り返す場合はwhileループを使用するのが一般的です。
5. ループの制御構文
Pythonでは、ループの動作を制御するために以下の3つのキーワードが使えます。
5.1 break(ループの強制終了)
breakを使うと、ループの途中で強制的に終了できます。
for num in range(10): if num == 5: break print(num)
この場合、numが5になった時点でbreakが実行され、ループが終了します。
5.2 continue(次のループへスキップ)
continueを使うと、特定の条件のときにループの残りの処理をスキップし、次の繰り返しに進めます。
for num in range(5): if num == 2: continue print(num)
ここではnum == 2のときだけprint(num)が実行されず、次のループに進んでいます。
5.3 else(ループ正常終了時の処理)
Pythonのループには、elseを組み合わせることができます。
for num in range(3): print(num) else: print("ループが正常に終了しました")
ただし、breakでループが途中で終了するとelseブロックは実行されません。
6. まとめ
Pythonのループは、繰り返し処理を簡潔に書くために非常に重要な機能です。
forループは、リストや文字列などのイテラブルオブジェクトを反復処理するのに適している。whileループは、条件が満たされるまで繰り返す場合に使用する。break、continue、elseを使うと、より柔軟なループ制御が可能。
初心者の方は、まず基本のforループとwhileループをしっかりと理解し、いろいろなケースで試してみると良いでしょう。

