俺言語。

自分にしか理解できない言語で書かれた備忘録

【Python】配列から値と一致するインデックスを取り出す方法

ListとNumpyで使用感が違う。

Listはインスタンスのメソッドなのに対してnumpyはnumpyクラスのメソッド。 紛らわしい。。

Listの場合

list.index()を使用

a = [1, 2, 3, 4, 5]
b = a.index(3)  # 引数は1つのみ、listで渡せない

> 2

ndarrayの場合

np.where()を使用、引数はndarrayであることと、戻り値がタプルな点に注意

a = [1, 2, 3, 4, 5]  
a = np.array(a)  # 引数がndarrayでないと正しく動かない!?
c = np.where(a==3)

> (array([2], dtype=int64),)  # 戻り値はタプルなので注意!