サイトアイコン 【TechGrowUp】

Python開発入門5 Pythonのループを解説:forループとwhileループの基本から応用まで

はじめに

Pythonのループ構文を使うことで、同じ処理を繰り返し実行することができます。これにより、手作業を自動化したり、膨大なデータを効率よく処理することが可能になります。

本記事では、Pythonの主要なループであるforループwhileループの基本的な使い方から、実践的な応用例までをわかりやすく解説します。初心者の方でも理解できるよう、簡単なコード例も多数掲載していますので、ぜひ参考にしてください!

ループとは?

ループとは、同じコードを複数回繰り返して実行するための構文です。Pythonでは主に以下の2種類のループを使用します:

  1. forループ:特定の回数またはコレクション(リストやタプルなど)の要素を反復処理するときに使用。
  2. whileループ:条件が真(True)の間、処理を繰り返す。

Pythonのforループ

基本構文

Pythonのforループは、リスト、タプル、文字列などのイテラブルオブジェクトを反復処理します。

for variable in iterable:
    # 繰り返し実行する処理

例1:リストを反復処理する

fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)

出力:

apple
banana
cherry

例2:数値の範囲を反復処理する

Pythonの組み込み関数range()を使うと、数値の範囲を簡単に処理できます。

for i in range(5):
    print(i)

出力:

0
1
2
3
4

ヒント: range(start, stop, step)の形式で、開始値・終了値・ステップ値を指定することも可能です。

for i in range(1, 10, 2):
    print(i)

出力:

1
3
5
7
9

Pythonのwhileループ

基本構文

whileループは、指定した条件が真(True)の間、処理を繰り返します。

while 条件式:
    # 繰り返し実行する処理

例1:条件が満たされるまで繰り返す

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

出力:

0
1
2
3
4

例2:ユーザー入力を繰り返し処理する

password = ""
while password != "1234":
    password = input("パスワードを入力してください: ")
print("正しいパスワードが入力されました!")

ループ制御文

Pythonには、ループの動作を制御するための特別な構文があります。

break文

breakは、ループを強制的に終了するために使用します。

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

出力:

0
1
2
3
4

continue文

continueは、ループの現在の反復をスキップし、次の反復に移ります。

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

出力:

0
1
3
4

else文

else文をループと組み合わせると、ループが正常に終了した場合にのみ実行されます(breakで終了した場合は実行されません)。

for i in range(5):
    print(i)
else:
    print("ループが正常に終了しました")

出力:

0
1
2
3
4
ループが正常に終了しました

ネストされたループ

Pythonでは、ループをネスト(入れ子)にすることができます。

for i in range(3):
    for j in range(3):
        print(f"i={i}, j={j}")

出力:

i=0, j=0
i=0, j=1
i=0, j=2
i=1, j=0
i=1, j=1
i=1, j=2
i=2, j=0
i=2, j=1
i=2, j=2

実践例

例1:九九表の生成

for i in range(1, 10):
    for j in range(1, 10):
        print(f"{i} x {j} = {i * j}")

例2:リスト内の数値の合計を計算

numbers = [1, 2, 3, 4, 5]
total = 0
for num in numbers:
    total += num
print("合計:", total)

出力:

合計: 15

Pythonループのベストプラクティス

  1. 無限ループに注意whileループを使用する場合、条件が常にTrueにならないように適切な終了条件を設定してください。
  2. リスト内包表記を活用:簡単なループ処理にはリスト内包表記を使うとコードが簡潔になります。
squares = [x**2 for x in range(10)]
print(squares)

まとめ

Pythonのループは、繰り返し処理を効率化し、コードを短く、簡潔にする強力なツールです。forループとwhileループの使い方をしっかり理解し、breakcontinueなどの制御文を適切に活用することで、柔軟なロジックを構築できます。

本記事を参考に、さまざまなループ処理を練習し、より高度なプログラミングスキルを身につけてください!

モバイルバージョンを終了