扫码一下
查看教程更方便
NumPy 中定义的最重要的对象是称为ndarray的 N 维数组对象。它描述了相同类型的项目的集合。可以使用从 0 开始的索引访问集合中的项目。
ndarray 中的每一项都在内存中占用相同大小的块。在ndarray中每个元素都是数据类型的对象,称为 dtype。
从ndarray对象中,通过切片方式获取的任何项都由数组标量类型之一的Python对象表示。下图显示了ndarray、数据类型对象(dtype)和数组标量类型之间的关系
ndarray 类的创建可以通过本教程后面描述的不同数组创建例程来构造。基本的 ndarray 是使用 NumPy 中的数组函数创建的,如下所示
numpy.array
使用任何创建数组对象的接口或任何返回数组的方法创建一个 ndarray。
numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
上面的构造函数的参数说明如下:
序号 | 名称 | 描述 |
---|---|---|
1 | object | 数组或嵌套的数列 |
2 | dtype | 数组元素的数据类型,可选 |
3 | copy | 对象是否需要复制,可选 |
4 | order | 创建数组的样式,C为行方向,F为列方向,A为任意方向(默认) |
5 | subok | 默认返回一个与基类类型一致的数组 |
6 | ndmin | 指定生成数组的最小维度 |
下面我们通过实际的程序代码来加深理解
打印一个一维数组
# 一维数组
import numpy as np
a = np.array([1,2,3])
print (a)
运行结果如下
[1 2 3]
打印一个多维数组
# 多维数组
import numpy as np
a = np.array([[1, 2], [3, 4]])
print (a)
运行结果如下
[[1, 2]
[3, 4]]
指定维度
# 由给定的数组创建一个指定维度的 ndarray
import numpy as np
a = np.array([1, 2, 3,4,5], ndmin = 2)
print (a)
运行结果如下:
[[1, 2, 3, 4, 5]]
由给定的数组创建一个指定数据类型的ndarray
import numpy as np
a = np.array([1, 2, 3], dtype = complex)
print (a)
运行结果如下:
[ 1.+0.j, 2.+0.j, 3.+0.j]
ndarray 对象由计算机内存的连续一维部分组成,并结合索引模式,将每个元素映射到内存块中的一个位置。内存块以行顺序(C样式)或列顺序(FORTRAN或MatLab风格,即前述的F样式)来保存元素。