首页 > 解决方案 > Python使用变量索引numpy数组

问题描述

我有一个索引位置的变量作为列表,例如 [1,2,3]。

我想使用此变量从多维数组中选择该索引。所以像:

A = np.array([[0,1],[2,2]])
location = [1,1]
print(A[location])

我希望它给我 2,与此相同:

print(A[1,1])

但我只有一个变量中的索引。有任何想法吗?

标签: pythonnumpy

解决方案


这将是反高潮,但只需使用一个元组:

>>> A[tuple(location)]
2

(或只是设置location = (1,1))。作为索引的列表具有特殊的行为,其中矩阵为每个元素单独索引并且结果被连接起来。一个特定的结果是,您可以拥有比维度更多的元素,这通常也令人惊讶。


推荐阅读