Pythonのenumerate()
関数は、コレクション(リストや文字列など)の各アイテムを順に取り出す際に、そのアイテムのインデックス(位置)も同時に取得するためのツールです。
enumerate()
関数を使用したfor
ループの基本的な形式は以下のようになります。
for i, アイテム in enumerate(コレクション):
# アイテムとそのインデックスiを使ったコード
ここでのコレクション
は、ループで処理したい一連のアイテム(例えば、リストや文字列など)を指します。アイテム
は、そのコレクションの各アイテムを参照するための変数名で、i
はアイテム
のインデックス(位置)を参照するための変数名です。
以下に、enumerate()
関数を使用したfor
ループの具体的な例を示します。
fruits = ["apple", "banana", "cherry"]
for i, fruit in enumerate(fruits):
print("Fruit", i+1, "is", fruit)
このコードは、fruits
というリストの各アイテム(ここでは各フルーツ)とそのインデックスを順に取り出し、「Fruit インデックス+1
is フルーツ名
」と表示します。つまり、このコードを実行すると以下の出力が得られます。
Fruit 1 is apple
Fruit 2 is banana
Fruit 3 is cherry
このように、enumerate()
関数は、リストや文字列のような順序付きのコレクションを扱う際に特に有用です。それぞれのアイテムが何番目であるか(インデックスが何であるか)を知りたいとき、またはそのインデックスに基づいて何らかの処理を行いたいときに使います。
Pythonのインデックスは0から始まるので、Fruit
の番号を人間が自然に理解する1から始めるために、インデックスに1を足しています。