访问Numpy中列表中的值范围

时间:2015-12-02 01:58:46

标签: python arrays numpy

假设我有两个大小为n的向量包含坐标(point1和point2),以及一些带有n维的大型Numpy数组(len(array.shape)== 3)。

现在,point1的所有值都小于point2,我想提取point1和point2之间包含的子数组。如果我事先知道维数n(例如n = 3),我会像这样访问它:

array[point1[0]:point2[0], point1[1]:point2[1], point1[2]:point2[2]]

我想知道在Numpy中是否有一种干净的pythonic方法可以用于任何数量的维度?

谢谢!

1 个答案:

答案 0 :(得分:2)

array[map(slice,point1,point2)]

A[0:2,0:2]的索引与作为切片元组的(slice(0,2), slice(0,2))相同。