对np.shape()的一点理解

np.array()创建时需要几个维度就要用几个[ ]括起来

import numpy as np
a=np.array([1,2,3,4])
print(a)
print(a.shape)

结果:

[1 2 3 4]
(4,)

如上面所示,只有1个[ ],也就是只有一个维度,a.shape(4,)表示第一个维度为4

import numpy as np
a=np.array([1,2,3,4],[1,2,3,4])
print(a)
print(a.shape)

结果:

Traceback (most recent call last):
  File "C:/Users/xj/test2.py", line 2, in <module>
    a=np.array([1,2,3,4],[1,2,3,4])
TypeError: data type not understood

注意这里报错了,数据类型无法被理解,前面也说了,用array创建时需要几个维度要用[ ]括起来,我们把代码改成

import numpy as np
a=np.array([[1,2,3,4],[1,2,3,4]])
print(a)
print(a.shape)

结果:

[[1 2 3 4]
 [1 2 3 4]]
(2, 4)

被最外围的[ ]包含的List有两对,所以第一维为2,第二维为4

import numpy as np
a=np.array([[[1,2,3,4],[1,2,3,4]]])
print(a)
print(a.shape)

结果:

[[[1 2 3 4]
  [1 2 3 4]]]
(1, 2, 4)

最外围的[ ]包含的list只有一对,所以第一维为1,第二维为2,第三维为4。