
上QQ阅读APP看书,第一时间看更新
1.3.1 数值计算库
NumPy为Python带来了真正的多维数组功能,并且提供了丰富的函数库来处理这些数组。在下面的例子中,使用如下公式计算π,可以看到在NumPy中使用数组运算替代通常需要借助循环的运算:

import numpy as np n = 100000 np.sum(4.0 / np.r_[1:n:4, -3:-n:-4]) 3.141572653589833
SciPy则在NumPy基础上添加了众多的科学计算所需的各种工具,它的核心计算部分都是一些久经考验的Fortran数值计算库,例如:
●线性代数使用LAPACK库
●快速傅立叶变换使用FFTPACK库
●常微分方程求解使用ODEPACK库
●非线性方程组求解以及最小值求解等使用MINPACK库
在下面的例子中,使用SciPy中提供的数值积分函数quad()计算π:

from scipy.integrate import quad quad(lambda x:(1-x**2)**0.5, -1, 1)[0] * 2 3.141592653589797