Python初心者向け、enumerate関数の使い方

リスト要素の取得でインデックスも欲しいときに便利な、enumerate関数のキホン的な使い方
ナノネ、今回はPythonの組み関数『enumerate』のキホン的な使い方を学ぼう。

enumerate関数?スペルを間違えた記憶しかないけど、どんなときに使うんだっけ?

enumerate関数は、forループ処理でリストなどから順番に要素を取り出すときに使うよ。要素の内容と合わせてインデックスの値も取得できるんだ。

たとえば、普通にforループでリスト要素を出力するときは、こんな感じのコードを書くよね。

my_list = ['A', 'B', 'C', 'D', 'E']
for item in my_list:
print(item)
これにenumerate関数を組み合わせると、インデックスの情報も同時に取得できるよ。

my_list = ['A', 'B', 'C', 'D', 'E']
for i, item in enumerate(my_list):
print(i, item)
変数はインデックス、要素の内容という順番で受け取ればいいんだね。

うん、返り値はタプルになっているから、変数を順番に並べておけば直接代入できるんだよ。

my_list = ['A', 'B', 'C', 'D', 'E']
for t in enumerate(my_list):
print(t)
t = (0, 'A')
print(type(t))
i, item = t
print(i, item)
enumerate関数の使い方は少し分かったけど...これでもいいんじゃない?

my_list = ['A', 'B', 'C', 'D', 'E']
i = 0
for item in my_list:
print(i, item)
i += 1
うん、出力結果を同じだね。お好みだけど、enumerate関数を利用した方がPythonっぽい?スッキリしたコードが書けるかも。

コードが読めるように、少なくとも使い方は覚えておいたほうがいいよ。enumerate関数はよく利用されるから。

ラジャー!

あと補足的な情報だけど、インデックスの開始値は引数で指定することができるよ。1から始めたい場合は、こんな感じで。

my_list = ['A', 'B', 'C', 'D', 'E']
for i, item in enumerate(my_list, 1):
print(i, item)
今回のenumerate関数の練習は以上で。またね。

お疲れさまでした。またね!

0 件のコメント :
コメントを投稿