【Python】リストから指定した値をもつ要素インデックスを取得

この記事では、Pythonを用いてリスト内の同じ値をもつ要素のインデックスを複数取得する方法をソースコード付きで紹介します。

インデックスを複数取得

Pythonでは、内包表記を用いてリスト内の同じ値をもつ要素のインデックスを取得できます。

書式

indexes = [i for i, e in enumerate(list) if e == 3]

ソースコード

サンプルプログラムのソースコードです。

#-*- coding:utf-8 -*-

def main():
    # リスト生成
    data = [1,2,3,4,5,4,3,2,1]
    # 値3をもつ全てのインデックス
    indexes = [i for i, e in enumerate(data) if e == 3]
    # 結果表示
    print(indexes) # [2, 6]
    
if __name__ == "__main__":
    main()
関連記事
1 Python入門 サンプル集
2 NumPy入門 サンプル集
関連記事