Pythonのfor文は、シーケンス(リスト、タプル、文字列、レンジなど)の各要素に対して、順番に操作を行うための繰り返し構文です。for文を使うことで、シーケンスの全要素に対して一括で処理を行うことができます。
基本構文
for文の基本構文は次のとおりです
for 変数 in シーケンス:
実行するコード
for文は、シーケンスの各要素に対して、順番に実行するコードブロックを繰り返します。
使用例
リストの反復処理
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)
この例では、リストfruits
の各要素に対して、順番にprint(fruit)
を実行します。出力は以下のようになります:
apple
banana
cherry
文字列の反復処理
message = "Hello"
for char in message:
print(char)
この例では、文字列message
の各文字に対して、順番にprint(char)
を実行します。出力は以下のようになります:
H
e
l
l
o
range()関数を使用した反復処理
for i in range(5):
print(i)
この例では、range(5)
が0から4までの数値を生成し、各数値に対してprint(i)
を実行します。出力は以下のようになります:
0
1
2
3
4
開始値、終了値、ステップを指定したrange()関数
for i in range(2, 10, 2):
print(i)
この例では、range(2, 10, 2)
が2から始まり10未満まで2ずつ増加する数値を生成し、各数値に対してprint(i)
を実行します。出力は以下のようになります:
2
4
6
8
ネストされたfor文
for文をネストして使用することで、多次元のシーケンス(リストのリストなど)を反復処理することができます。
matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
for row in matrix:
for element in row:
print(element, end=" ")
print()
この例では、matrix
の各行に対して、各要素を順番にprint(element, end=" ")
を実行し、行ごとに改行します。出力は以下のようになります:
1 2 3
4 5 6
7 8 9
break文とcontinue文
for文の中でbreak
文を使用すると、ループを途中で終了させることができます。また、continue
文を使用すると、現在の反復をスキップして次の反復に移ります。
break文の使用例
for i in range(10):
if i == 5:
break
print(i)
この例では、変数i
が5になった時点でループが終了します。出力は以下のようになります:
0
1
2
3
4
continue文の使用例
for i in range(10):
if i % 2 == 0:
continue
print(i)
この例では、変数i
が偶数の場合に現在の反復をスキップします。出力は以下のようになります:
1
3
5
7
9
else節
for文にはelse
節を付けることができ、ループが正常に終了した場合に実行されます。
for i in range(5):
print(i)
else:
print("ループが正常に終了しました")
この例では、ループが正常に終了すると、else
節のコードが実行されます。出力は以下のようになります:
0
1
2
3
4
ループが正常に終了しました