numpy的数组维度问题

  由于之前写c++的时候大多用的是小于3维的数组,所以看到python中numpy的高维array(数组),层层叠叠的[]感觉把眼都看花了。 现在让我们睁大眼睛,仔细看看到底是怎么回事。
举例说明:

>>>x1 = np.array([[1,2,3],[4,5,6]])
>>>x1.shape
>>>(2,3)
>>>x2 = np.array([[[0],[1],[2]]])
>>>x2.shape
>>>(1,3,1)

  中括号虽然看的人眼花,但仔细分析很快就会看明白了。拿第一个例子来说,我们把数字忽略,把中括号和逗号提取出来,得到:

[   [ ,,,] ,  [ ,,,]   ]

这样的结构,这下就明了了,第一个中括号里面有用逗号分开的两个并列的中括号,说明第一个维度有两个元素,所以是2,而更深层次的中括号里面没有了中括号,而是三个逗号,说明是三个并列的元素,所以是3.所以输出(2,3),同理可知,x2为(1,3,1)

猜你喜欢

转载自blog.csdn.net/cttacm/article/details/78222414
今日推荐