python有多个方法计算积分,下面介绍其中三个,以下式为例:
方法一:直接用numpy计算
start = 1
stop = 2
length = 101
x = np.linspace(start, stop, length)
y = x**2
result = sum(y*(stop-start)/length)
print(result)
输出结果:
2.335
方法二:用sympy计算
from sympy import *
x = symbols("x")
print(integrate(x**2, (x, 1, 2))) # integrate的参数(函数,(变量,起始位置,终止位置))
输出结果:
7/3
方法三:用 scipy计算
from scipy import integrate
def f(x):
return x**2
print(integrate.quad(f,1,2)) # quad方法会返回精确的值和误差
输出结果:
(2.3333333333333335, 2.590520390792032e-14)