2024-04-26 14:47:05 发布
网友
我有一个数组的所有维度的索引元组列表,包括前两个。你知道吗
对于每个索引元组,我想返回这个元组位置的数组切片。你知道吗
我事先不知道数组中的维数,也不知道索引元组中元素的数目。你知道吗
例如,如果索引元组(pos)中有两个元素,我将编写如下内容:
pos
arr[:, :, pos[0], pos[1]]
返回此位置的数组切片。我希望能够做到这一点,而不必事先知道pos的长度。我天真地认为arr[:, :, *pos]会起作用,但当然不会
arr[:, :, *pos]
谢谢你的帮助。你知道吗
可以将Ellipsis与元组p连接起来,以获得可用于切片数组的元组Ep:
Ellipsis
p
Ep
Ep = (Ellipsis,)+p sliced_arr = arr[Ep]
编辑:感谢前面的答案(已经删除了),因为它提到了Ellipsis,这实际上是我这里答案的一半。你知道吗
可以将
Ellipsis
与元组p
连接起来,以获得可用于切片数组的元组Ep
:编辑:感谢前面的答案(已经删除了),因为它提到了
Ellipsis
,这实际上是我这里答案的一半。你知道吗相关问题 更多 >
编程相关推荐