【初心者向け】Pythonでfor文の使い方をマスターしよう
Pythonにおけるfor文とは
Pythonにおけるfor文は、リストやタプル、辞書、セットなどの要素を順番に取り出して処理を行うための制御構文です。
for文を使うことで、同じ処理を複数の要素に対して繰り返し適用することができます。
for文の一般的な書式は以下の通りです。
for 変数 in イテラブル:
処理
変数にはイテラブルから取り出した要素が順番に代入されます。
イテラブルとはfor文で順番に取り出すことができるオブジェクトで、リスト(配列)やタプル、辞書、セット(集合)などが該当します。
処理には、繰り返し実行するコードを記述します。
リストの要素をfor文で処理する
まずは、リストの要素をfor文で処理する方法を見てみましょう。
以下のようなリストがあるとします。
fruits = ['apple', 'banana', 'orange']
このリストの要素をfor文で順番に取り出し、出力するには以下のように記述します。
for fruit in fruits:
print(fruit)
上記のコードを実行すると、リストfruitsの要素が順番に出力されます。
apple
banana
orange
タプルの要素をfor文で処理する
タプルの場合もリストと同じようにfor文で扱うことができます。
fruits = ("apple", "banana", "cherry")
for fruit in fruits:
print(fruit)
上記の例では、タプルfruitsの要素を1つずつ取り出して、変数fruitに代入しています。
その後、print関数を使ってfruitを出力しています。
このように、for文を使ってタプルの要素を順番に処理することができます。
辞書の要素をfor文で処理する
次に、辞書の要素をfor文で処理する方法を見てみましょう。
辞書の要素はキーと値のペアで構成されているため、for文で取り出すときはキーと値を別々に取り出す必要があります。
以下のような辞書があるとします。
scores = {'English': 90, 'Math': 80, 'Science': 70}
この辞書の要素をfor文で順番に取り出し、出力するには以下のように記述します。
for subject, score in scores.items():
print(f'{subject}: {score}')
上記のコードを実行すると、辞書scoresのキーと値が順番に出力されます。
English: 90
Math: 80
Science: 70
セットの要素をfor文で処理する
次にセットの要素をfor文で処理する方法を見てみましょう。
セットは重複しない要素の集合で、要素の順序を保持しないという特徴があります。
そのため、for文で取り出すときは順番が保証されません。
以下のようなセットがあるとします。
colors = {'red', 'blue', 'green'}
このセットの要素をfor文で順番に取り出し、出力するには以下のように記述します。
for color in colors:
print(color)
上記のコードを実行すると、セットcolorsの要素が順不同で出力されます。
blue
red
green
range関数を使ったfor文の使い方
次はPythonでfor文と一緒に使われることが多いrange関数を使った例です。
range関数は、指定された範囲の整数を生成するための組み込み関数です。
range(start, stop, step)
上記のように引数を指定することで、startからstop-1までの範囲の整数をstepずつ増やしながら生成します。
startを省略すると0から、stepを省略すると1ずつ増加します。
例えば、range(1, 10, 2)は、1から9までの範囲の整数を2ずつ増加させながら生成します。
このrange関数をfor文と組み合わせて使うことで、指定された範囲の整数を繰り返し処理することができます。
以下のコードは、1から9までの範囲の整数を2ずつ増加させながら出力する例です。
for i in range(1, 10, 2):
print(i)
上記のコードを実行すると、以下のように出力されます。
1
3
5
7
9
breakとcontinueの使い方
最後にbreakとcontinueの使い方について解説します。
breakは、任意の部分でループから抜け出したい時に使用します。
for i in range(5):
if i == 3:
break
print(i)
上記のように値が3になった際に、breakが実行されるようにすると、
0
1
2
が返却され、値が3になった際にはループから抜け出していることがわかります。
またcontiuneは残りの処理をスキップし、次のループ処理に移りたい時に使います。
for i in range(5):
if i == 3:
continue
print(i)
breakの場合は3になった際に、ループから抜け出していましたが、continueの場合は、次のループ処理、つまりブロックの先頭に戻されます。
0
1
2
4
実行結果を見て頂くと分かる通り、値が3になった際はスキップ(contiune)され、printされていないことがわかります。
まとめ
Pythonのfor文はリストやタプル、辞書、セットなどの要素を順番に取り出して処理を行うための制御構文です。
for文を使うことで、同じ処理を複数の要素に対して繰り返し適用することができます。
また、range関数を使ったfor文の使い方も覚えておくと便利です。
Pythonはもちろん、様々なプログラミング言語でも必須の機能なので、基本的な使い方はしっかりとマスターしておきましょう。