为什么我得到 f(x) = x**2(其中 x = 2)的导数为 0 而不是 4?

Rah*_*una 0 math sympy derivative

  • 我得到 f(x) = x**2 的正确导数为 2*x

  • 但是,当我用 2 替换 x 的值时,它给出的结果是 0 而不是 4

  • 无论我给 x 赋予什么值,它的结果都是 0

Google Colab 笔记本的快照

我试过这个:

from sympy import *

x = symbols('x')
f = x**2

diff(f.subs(x,2), x)
Run Code Online (Sandbox Code Playgroud)

我本来期望结果是 4 但结果是 0

Ana*_*a 秀 7

这是因为你正在求一个常数的导数。你应该先求出函数f = x**2,然后代x = 2入结果。尝试类似的方法:

diff(f, x).subs(x, 2)
Run Code Online (Sandbox Code Playgroud)

或者

df = diff(f, x)
df.subs(x, 2)
Run Code Online (Sandbox Code Playgroud)