首页 > 解决方案 > 如何使用列表索引数组

问题描述

我有一个k=4维度数组

A = np.zeros([3,3,3,3])

k事先不知道或很大。如何使用列表

i = [1,1,1,1] 

获取元素

A = [1,1,1,1]

?

标签: pythonarrayslistnumpyindexing

解决方案


在后台,当您为数组提供多个维度时,Python 会传递一个元组numpy。所以你想要的只是A[tuple(i)].

演示:

>>> A = np.arange(81).reshape(3,3,3,3)
>>> i = [1, 1, 1, 1]
>>> A[1,1,1,1]
40
>>> A[tuple(i)]
40

推荐阅读