我的代码当前有一个数组,例如:
arr = np.ones((512, 512)).
我感兴趣的是阵列的某个区域。我通常这样访问它:
arr[50:200,150:350] #do stuff here.
我想知道,是否有某种方法可以使变量包含[50:200,150:350]
?这样,如果我需要稍微更改掩码,则可以在文件顶部执行一次操作,而不是在访问它的任何地方进行操作。
我尝试了mask = [50:200,150:350]
,arr[mask]
,但Python语法不允许这样做。
感谢您的帮助!
答案 0 :(得分:3)
显然numpy
扩展了切片,并允许多个slice()
对象,每个维度一个。
import numpy
o = numpy.ones((32, 32))
print(o[3:5,3:5])
foo = slice(3,5), slice(3,5)
print(o[foo])
两个咒语都会产生相同的结果:)