Python/Numpy:将值设置为索引范围

Python/Numpy:将值设置为索引范围,python,arrays,numpy,Python,Arrays,Numpy,使用Numpy,我可以创建如下5维数组: >>> faces = numpy.zeros((3, 3, 3, 6, 3)) 我希望(所有索引,所有索引,0,4)设置为(1,1,1.)。只有使用Numpy(无Python循环)才能实现这一点吗?Numpy支持直接实现这一点 f[:,:,0,4] = 1.0 以下两项都可以做到: faces[:,:,0,4] = 1 faces[:,:,0,4] = (1, 1, 1) 第一种方法通过让NumPy将1广播到正确的维度来使用所

使用Numpy,我可以创建如下5维数组:

>>> faces = numpy.zeros((3, 3, 3, 6, 3))
我希望
(所有索引,所有索引,0,4)
设置为
(1,1,1.)
。只有使用Numpy(无Python循环)才能实现这一点吗?

Numpy支持直接实现这一点

f[:,:,0,4] = 1.0

以下两项都可以做到:

faces[:,:,0,4] = 1

faces[:,:,0,4] = (1, 1, 1)
第一种方法通过让NumPy将1广播到正确的维度来使用所有三个值都相同的事实


第二个更一般,因为您可以为三个元素指定不同的值。

有没有办法将切片表示法放入元组中以某种方式传递给Numpy?@Synthead,您可以使用
slice(None),slice(None),0,4