使用sympy 对指定函数表达式求值和求指定位置的导数
from sympy import *
x = symbols('x')
y = x ** 3 + x ** 2 + 1
# 表达式求值
for i in range(3):
print(y.evalf(subs={x: i}))
# 求导
print(diff(y, x))
for i in range(3):
print(diff(y, x).evalf(subs={x: i}))
1.00000000000000
3.00000000000000
13.0000000000000
3*x**2 + 2*x
0
5.00000000000000
16.0000000000000