f(x).subs()替换为sympy(python)

时间:2016-10-11 21:02:49

标签: python sympy

我定义了符号a和f。我期待使用" a(3).subs(a,f)"获得f(3),但我得到了(3)。它有什么问题?

a, f = symbols('a f')

a(3).subs(a,f)

2 个答案:

答案 0 :(得分:1)

您已将f定义为函数,然后将其替换为symbols()的返回值。

答案 1 :(得分:0)

您可以使用replace更改功能。这里有些例子。

import sympy as sp

f = sp.Function('f')
g = sp.Function('g')
x,y = sp.symbols('x, y')

f(x).replace(f, g)
  

g(x)

f(x).replace(f, sp.sin)
  

sin(x)

f(x,y).replace(f, lambda *args: sp.exp(-5 * args[0] + args[1] ))
  

exp(-5*x + y)

documentation提供了大量其他示例。