如果定义了fuctions,Sympy可以识别表达式中的函数吗?

问题描述 投票:0回答:1

我看到Sympy有一个叫做 sympy.Function 功能,但在文档中找不到下面的答案。

是否可以在表达式中找到自定义函数,并使用函数定义来简化。

作为一个非常简单的例子,我定义了函数。f(x) = 2 * exp(x).

现在假设我有一些Sympy表达式。6 * exp(y + z)

能否告诉Sympy简化这个表达式 用函数的方式给出一个结果?f......也就是说,Sympy的输出是......。3 * f(x).

我发现,使用 .subs() 对变量的简单替换有效,但对包含符号作为参数的函数似乎不起作用,如上所述。

谢谢,我看到Sympy有一个sympy.Function的功能,但是不能用在包含符号作为参数的函数上,如上所述。

python function sympy symbolic-math
1个回答
0
投票

我想你想做的事情目前还不被Sympy支持(比如看这个stackoverflow)。疑问). 然而,用这段代码可以做一些非常接近的事情。

from sympy import symbols, exp

x, f = symbols('x, f')
expr = 6 * exp(x)
f_func = 2 * exp(x)

print(expr.subs({f_func: f}))
# 3 * f

在上面的代码中,我假设你要简化的表达式是:expr 在代码中)是一个函数 x.

© www.soinside.com 2019 - 2024. All rights reserved.