我试图使用使用sympy.diff
找到的导数函数来计算其他值。由于某种原因,当我尝试我的代码时,我得到了这个消息:
下面是我的代码:ValueError:第一个变量不能是数字:4
import sympy as sp
def f(x):
return (x**2-3)/2
x = sp.Symbol('x')
def df(x):
return sp.diff(f(x), x, 1)
print('la dérivée de f(x) est:', df(x))
print(df(4))
原因是,在print(df(4))
中,您将数字4传递给df
, CC_3将其传递给sp.diff(f(4), 4, 1)
。
您的意思是将sp.Symbol('x')
传递给sp.diff
,然后将返回一个函数(=f
对x
的导数),到,您可以传递数字4(=在x = 4
处求值)。
import sympy as sp
def f(x):
return (x**2-3)/2
x = sp.Symbol('x')
def df(x):
return sp.diff(f(x), x, 1)
print('la dérivée de f(x) est:', df(x))
print(df(x)(4)) # note the additional (x) here