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))) # integer的參數(函數,(變量,起始位置,終止位置))
輸出結果:
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)