Numpy快速⼊门(⼀)——shape属性
前⾔
对于学习NumPy(Numeric Python),⾸先需要知道⼀点是:Numpy 是⽤来处理矩阵数组的。因此,知道⼀个数组是多少维度是很有必要的。
shape 属性
对于shape函数,官⽅⽂档是这么说明:
the dimensions of the array. This is a tuple of integers indicating the size of the array in each dimension.
直译:数组的维度。这是⼀个整数的元组,元组中的每⼀个元素对应着每⼀维度的⼤⼩(size)。
再直译⼀点理解就是,若元组只有⼀个元素,则说明这个数组是⼀维数组:如元组(2,)  表⽰⼀维数组,只含有2个元素;同理,可知(1,3)表⽰的是⼀个2维数组,因为含有2个元素 :1,3
举例说明:
⼀维数组
numpy库功能
import numpy as np
a = np.array([1,2,3])
print(a.shape) # 输出 (3,)
说明:这⾥输出的元组(3,)按官⽅的⽂档理解,这⾥的3表⽰的是第⼀个维度中元素的⼤⼩(size);
同理,对于⼆维数组myarray,可推测出myarray.shape输出的应该类似(n,m)只含有两个元素的元组。
其中,第⼀个元素n代表中⼀维数组中元素的个数;m代表第⼆维度中元素的个数。
b = np.array([[1,2,3],[3,4,5]])
print(b.shape) # 输出(2,3)
元组(2,3) 说明这是⼀个⼆维数组,其中第⼀个维度含有2个元素,第⼆个维度中每⼀个元素都含有3个元素(1,2,3).
总结
通过以上的例⼦,我们可以知道对于numpy中数组的shape属性输出的元组,有以下两个结论:
1. 元组的元素的个数等于维度数
2. 元组中每⼀个元素⼜代表中每⼀维度元素的个数(从左到右,依次为第⼀维度中元素的个数,第⼆维度中元素的个数...第n维度元素的
个数)
如,若某⼀个numpy数组test_array 调⽤shape输出为(2,3,3,4) 我们根据上⾯的结论,就可以很快的知道这是⼀个4维的数组。
其中,第⼀个维度只有2个元素。第⼆个维度有3个元素,第三个维度也有3个元素,最后的第四个维度有4个元素。
最后的最后
对于numpy中的数组,若是不知道他是⼏维的,我们可以输出他的shape属性,然后,数⼀下有⼏个元素就很easy 知道数组是⼏维数组啦。