リストなどを for で回すときにインデックスが欲しい場合は enumerate
を使います。
環境
- python 3.8.1
サンプルコード
hoge = [10, 20, 30]
for index, value in enumerate(hoge):
print(index, value)
実行結果
0 10
1 20
2 30
逆順で出力するときの注意
単純に逆順で出力すると以下のようになります。
hoge = [10, 20, 30]
for index, value in enumerate(hoge[::-1]):
print(index, value)
0 30
1 20
2 10
インデックスも逆順に出力したい場合は少し計算してやる必要があります。
hoge = [10, 20, 30]
for index, value in enumerate(hoge[::-1]):
print(len(hoge) - index - 1, value)
2 30
1 20
0 10