NumPy代表Numerical Python,是Python编程语言的库。它提供对大型多维数组和矩阵的支持,以及大量用于快速数组操作的例程集合。它是一个开源软件,有许多贡献者。 NumPy 的早期版本是 Numeric,由 Jim Hugunin 以及其他几位开发人员的贡献创建。还开发了另一个软件包 Numarray,具有一些附加功能。 2005 年,经过大量修改,Travis Oliphant 将 Numarray 的功能合并到 Numeric 中,创建了 NumPy。
以下是 NumPy 包的重要功能:
- 高性能N维数组对象:这是NumPy库最重要的特性。 Numpy 可用于创建和操作多维数组。
- 集成 C/C++ 和 Fortran 代码的工具:它提供了与其他语言编写的代码一起使用的功能。这有助于实现跨平台功能。
- 有用的线性代数、傅里叶变换和随机数功能:Numpy 能够对数组执行复杂的操作。它为每个复杂函数都有单独的模块,例如:用于线性代数函数的 linalg 模块、用于傅里叶变换的 fft 模块、用于矩阵函数的矩阵模块和用于绘制图形的 matplotlib 模块等。
- 广播函数:Numpy 提供了广播函数,这是处理形状不均匀的数组时非常有用的概念。
- 数据类型定义功能:它允许用户使用不同数据类型的数组。与此 dtype 函数一起可用于确定数组的数据类型。由于 NumPy 操作的限制,了解数组的数据类型非常重要。
Numpy 通常与其他软件包一起使用,例如 SciPy 和 Matplotlib。通过这种组合,它被广泛用作流行的技术计算平台 MATLAB 的替代品。由于计算能力强、软件免费、开源等特点,Python相对于MATLAB现在被视为技术计算的新范式。