上QQ阅读APP看书,第一时间看更新
2.3 数组属性
在NumPy中,一个数组就是一个ndarray对象。ndarray,是n dimension array (N维数组)的缩写。数组的属性非常多,常用的属性如表2-3所示。
表2-3 数组常用的属性
ndim是n dimension(N维)的缩写,dtype是data type(数据类型)的缩写。
举例:一维数组
import numpy as np nums = [1, 2, 3, 4, 5, 6, 7, 8] arr = np.array(nums) print(arr.ndim) print(arr.shape) print(arr.size) print(arr.dtype)
输出结果如下:
1 (8,) 8 int32
分析
从结果可以看出,arr的维度是1,表示这是一个一维数组;arr的形状是(8,);元素的个数是8;元素的类型是int32,即32位整数。
举例:二维数组
import numpy as np nums = [[1, 2, 3, 4], [5, 6, 7, 8]] arr = np.array(nums) print(arr.ndim) print(arr.shape) print(arr.size) print(arr.dtype)
输出结果如下:
2 (2, 4) 8 int32
分析
从结果可以看出,arr的维度是2,表示这是一个二维数组;arr的形状是(2, 4),表示这是一个2×4的二维数组;元素的个数是8;元素的类型是int32。
举例:三维数组
import numpy as np nums = [[[1, 2, 3], [4, 5, 6]], [[1, 2, 3], [4, 5, 6]]] arr = np.array(nums) print(arr.ndim) print(arr.shape) print(arr.size) print(arr.dtype)
输出结果如下:
3 (2, 2, 3) 12 int32
分析
从结果可以看出,arr的维度是3,表示这是一个三维数组;arr的形状是(2, 2, 3),表示这是一个2×2×3的三维数组;元素的个数是12;元素的类型是int32。
“数组形状”这个概念非常重要,在后面的学习中会经常接触到,读者一定要理解清楚。
【常见问题】
我们经常说起“数组的类型”,它指的是什么呢?
在NumPy中,对于一个数组来说,所有元素的类型都是相同的,所以数组的类型其实指的就是它元素的类型。
了解这一点是非常重要的,很多读者可能觉得“数组的类型”这种叫法有问题,其实并非如此。