Python enumerate - eiichiromomma/CVMLAB GitHub Wiki

(Python) enumerate

for ループ中にインデックスを取得する

Pythonでは

flist = ['SampleC/IMG_3379.JPG',
 'SampleC/IMG_3380.JPG',
 'SampleC/IMG_3381.JPG',
 'SampleC/IMG_3382.JPG',
 'SampleC/IMG_3383.JPG',
 'SampleC/IMG_3384.JPG',
 'SampleC/IMG_3385.JPG',
 'SampleC/IMG_3386.JPG',
 'SampleC/IMG_3387.JPG',
 'SampleC/IMG_3388.JPG',
 'SampleC/IMG_3389.JPG']

のような場合

for fn in flist:
    print fn

とlistの要素をループに指定できるが,今何番目かインデックスも欲しい時がある。

enumerate

現在のインデックスと要素を返すenumerateを使う。

    for (i, x) in enumerate(flist):
        print i
        print x

    0
    SampleC/IMG_3379.JPG
    1
    SampleC/IMG_3380.JPG
    2
    SampleC/IMG_3381.JPG
    3
    SampleC/IMG_3382.JPG
    4
    SampleC/IMG_3383.JPG
    5
    SampleC/IMG_3384.JPG
    6
    SampleC/IMG_3385.JPG
    7
    SampleC/IMG_3386.JPG
    8
    SampleC/IMG_3387.JPG
    9
    SampleC/IMG_3388.JPG
    10
    SampleC/IMG_3389.JPG

となる。