Python

Pythonのループを解説

Pythonのループについて詳しく解説します。Pythonには主に2つのループ構造があります:forループとwhileループです。これらのループを使用して、同じコードブロックを繰り返し実行することができます。

1. forループ

forループは、シーケンス(リスト、タプル、文字列など)の各要素に対して繰り返し処理を行います。

基本的なforループの構文

fruits = ["りんご", "バナナ", "みかん"]

for fruit in fruits:
    print(fruit)

この例では、fruitsリストの各要素を順にfruit変数に代入し、print関数で出力しています。

range関数を使ったforループ

range関数を使うと、指定した範囲の数値を生成してループを実行できます。

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

この例では、0から4までの数値が順にi変数に代入され、出力されます。

range関数の他の使い方:

  • range(start, stop): startからstop-1までの数値を生成
  • range(start, stop, step): startからstop-1までの数値をstepずつ増加させて生成
for i in range(1, 10, 2):
    print(i)

この例では、1から9までの奇数が出力されます。

ネストしたforループ

forループをネスト(入れ子)にすることで、複雑な繰り返し処理を行うことができます。

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

この例では、外側のループが3回、内側のループがそれぞれ2回実行されます。

2. whileループ

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

基本的なwhileループの構文

count = 0

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

この例では、count変数が5未満である限り、print関数で出力され、countが1ずつ増加します。

無限ループ

条件が常に真(True)の場合、ループは無限に実行されます。無限ループを避けるために、条件を適切に設定し、必要に応じてbreak文でループを終了します。

while True:
    response = input("終了するには'q'を入力してください: ")
    if response == 'q':
        break

この例では、ユーザーが'q'を入力するまでループが続きます。

ループ制御文

ループを制御するために、break文とcontinue文を使用できます。

break文

break文は、ループを強制的に終了します。

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

この例では、iが5になるとループが終了します。

continue文

continue文は、現在のイテレーション(繰り返し)をスキップし、次のイテレーションに移ります。

for i in range(10):
    if i % 2 == 0:
        continue
    print(i)

この例では、iが偶数の場合はスキップされ、奇数のみが出力されます。

ループのelse節

Pythonのループには、オプションでelse節を付けることができます。else節は、ループが正常に完了した場合に実行されます(break文で終了した場合は実行されません)。

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

count = 0
while count < 5:
    print(count)
    count += 1
else:
    print("whileループが正常に完了しました")

まとめ

  • forループ: シーケンスの各要素に対して繰り返し処理を行う。
  • whileループ: 指定した条件が真の間、繰り返し処理を行う。
  • break文: ループを強制的に終了する。
  • continue文: 現在のイテレーションをスキップし、次のイテレーションに移る。
  • else節: ループが正常に完了した場合に実行される。

これでPythonのループの基本的な理解が深まったと思います。

スポンサーリンク

-Python