如何在python中访问带有索引数组的数组?

时间:2018-01-26 12:04:37

标签: python arrays numpy indexoutofboundsexception

我想访问带有索引数组的多维python数组,使用整个数组来索引目标元素。 让我更好地解释一下:

A = np.arange(4).reshape(2,2)
a = [1,1]
>>> A[a[0],a[1]]
3

我的目的是传递数组而不对索引值进行硬编码并获得相同的结果,即值A[1,1]。我试过,但我找到的唯一方法是以不同的方式工作:

>>> A[a]
array([[2, 3],
   [2, 3]])
  

新数组的构造是什么结果,其中索引数组的每个值从被索引的数组中选择一行,结果数组具有结果形状(索引元素的数量,行的大小)。

谢谢。

1 个答案:

答案 0 :(得分:2)

tuple (不是list)传递给__getitem__[..]索引器)。

A[tuple(a)]
3