你可以把.shape整体绑定到另外一个tuple,这个绑定会调用
numpy/core/src/multiarray/shape.c里面的_fix_unknown_dimension()函
数,检查新shape和旧shape乘起来是否一样,不一样就抛异常。
但你不能a.shape[1]=3,因为你不能只改变其中一维的大小。把.shape设定成
immutable type从概念上防止了你可能这样更改的企图。
【 在 Tux (蓝色幽灵) 的大作中提到: 】
: 嗯,我是转成array来算的,只不过转的多了挺啰嗦的
: 况且shape本身也是调整的啊,
: In [15]: a = arange(16).reshape(4,4)
: ...................