numpy.ndarray.shape#
属性
- ndarray.shape#
数组维度的元组。
shape 属性通常用于获取数组的当前形状,但也可以通过为其赋值一个数组维度元组来就地重塑数组。与
numpy.reshape
类似,新形状维度中的一个可以是 -1,在这种情况下,其值会从数组大小和剩余维度推断。如果需要复制,则就地重塑数组会失败。警告
不推荐设置
arr.shape
,将来可能会弃用。推荐使用ndarray.reshape
方法。另请参阅
numpy.shape
等效的 getter 函数。
numpy.reshape
与设置
shape
类似的函数。ndarray.reshape
与设置
shape
类似的方法。
示例
>>> import numpy as np >>> x = np.array([1, 2, 3, 4]) >>> x.shape (4,) >>> y = np.zeros((2, 3, 4)) >>> y.shape (2, 3, 4) >>> y.shape = (3, 8) >>> y array([[ 0., 0., 0., 0., 0., 0., 0., 0.], [ 0., 0., 0., 0., 0., 0., 0., 0.], [ 0., 0., 0., 0., 0., 0., 0., 0.]]) >>> y.shape = (3, 6) Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: cannot reshape array of size 24 into shape (3,6) >>> np.zeros((4,2))[::2].shape = (-1,) Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: Incompatible shape for in-place modification. Use `.reshape()` to make a copy with the desired shape.