什么是 NumPy?
NumPy(Numerical Python 的缩写)是Python中科学计算的基础包。它是一个Python库,提供多维数组对象,各种派生对象(如掩码数组和矩阵),以及用于数组快速操作的各种API,有包括数学、逻辑、形状操作、排序、选择、输入输出、离散傅立叶变换、基本线性代数,基本统计运算和随机模拟等等。
----NumPy官方中文文档
应用场景:NumPy 通常与 SciPy(Python科学计算库)和 Matplotlib(Python绘图库)等软件包组合使用,这种组合方式被用来广泛地代替 MatLab 的使用。
安装和导入NumPy
使用Python包管理器pip命令安装
# windows下安装(或安装Ancaonda)
pip install numpy
#这里的NumPy需要小写为numpy,后面导入的时候也是这样!!!
使用前请先导入Numpy包!
import numpy
# 通常起个名字:np
import numpy as np
查看你自己的NumPy版本
import numpy as np
print(np.__version__)
# 1.导包
# 2.双下划线
NumPy Ndarray 对象
Numpy提供了两种基本对象:
- ndarray:多维数组,后简称数组
- ufunc:能够对多维数组(数组)进行处理的特殊函数
NumPy库的核心对象是n维数组对象ndarray,其中的所有函数都是对ndarray对象进行操作。(ndarray数组能对整块数据进行运算,而且其中存储的所有元素都是相同类型, 且每个元素在内存中都有相同存储大小的区域)ndarray能直接直接保存数据,而列表存储的是对象引用。
numpy.array(object, dtype = None, copy = Ture, order = None, subok = False, ndmin = 0)
参数说明:
名称 | 描述 |
object | 可以是数组或者嵌套的数列 |
dtype | 数组元素的数据类型,可选 |
copy | 对象是否需要复制,可选 |
order | 创建数组的样式,C为行方向,F为列方向,A为默认(任意方向) |
subok | 默认返回一个与基类类型一致的数组 |
ndmin | 生成指定数组的最小维度 |
下面提供一些示例方便理解:
import numpy as np
# 创建一个一维数组
a = np.array([1,2,3])
print (a) # [1 2 3]
# 多于一个维度
a = np.array([[1, 2], [3, 4]])
print (a)
# [[1 2]
# [3 4]]
# 最小维度
a = np.array([1, 2, 3, 4, 5], ndmin = 2)
print (a) # [[1 2 3 4 5]]
# dtype 参数
a = np.array([1, 2, 3], dtype = complex)
print (a) # [1.+0.j 2.+0.j 3.+0.j]
数组的基本属性:
属性 | 含义 |
ndarray.ndim | 数组的维度 |
ndarray.shape | 数组的维度大小,返回一个元组。 对于n行m列的数组维度大小为(n,m) |
ndarray.size | 数组中元素的总数等于行乘列 |
ndarray.dtype | 数组的元素类型(可指定元素类型) |
ndarray.itemsize | 数组中每个元素的大小(以字节为单位) |
ndarray.data | 生成指向数组首地址的一个memoryview对象 |
创建一个 ndarray 只需调用 NumPy 的 array 函数即可: