用任意参数替换sympy函数

克雷格

这应该是一个容易的任务,但是我很难让它在Sympy中工作。我想用带有特定公式的任意参数替换未定义的函数,例如:

from sympy import *
var('a b c')
f= Function('f')
test= f(a+b)
lin= test.subs({f(c):2*(c)})
print(lin)

我要打印出来

2*(a+b)

但是,为此,我必须使用

lin= test.subs({f(a+b):2*(a+b)})

我是否必须将f定义为类才能进行此替换?

奥利弗·W

当您像这样进行高级表达式操作时(好的,您的示例仍然很简单),replace方法非常有用:

test.replace(f, lambda arg: 2*arg)  # returns: 2*x + 2*y

从文档:

[替换]遍历表达式树并从树的底部到顶部执行匹配子表达式的替换。

文档的第二个示例显示,任何函数都可以用对其参数起作用的另一个函数替代,如上例所示。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

sympy任意函数范围

来自分类Dev

用函数参数替换重复代码

来自分类Dev

Sympy 函数替换

来自分类Dev

用mono.cecil或postsharp替换属性构造函数参数

来自分类Dev

正则表达式在函数参数周围用[]替换()

来自分类Dev

用参数替换函数作为字符串数组

来自分类Dev

用日期替换参数

来自分类Dev

用匹配本身的任意函数替换正则表达式匹配

来自分类Dev

函数指针和任意参数

来自分类Dev

用Python方式制作可以采用可迭代或任意数量参数的函数?

来自分类Dev

使用任意函数作为模板参数参数

来自分类Dev

以任意数量的参数作为参数的函数

来自分类Dev

Gsub函数用第3个参数而不是第2个参数替换值

来自分类Dev

用IP地址替换参数

来自分类Dev

SymPy:将符号的任意列表/元组传递到求解函数

来自分类Dev

sympy lambdify与元组中的函数参数?

来自分类Dev

用Sympy计算泰勒级数的多元函数

来自分类Dev

用Sympy计算泰勒级数的多元函数

来自分类Dev

用expand.grid替换嵌套循环,并用多个参数调用内部函数

来自分类Dev

用实例中方法的指针替换参数中的静态函数指针

来自分类Dev

用numpy sum替换与两个变量的函数内的参数有关的for循环

来自分类Dev

用带参数的自定义函数的输出替换 sed 中的日期字符串

来自分类Dev

装饰器,允许函数接受任意参数

来自分类Dev

C ++函数可打印任意数量的参数

来自分类Dev

用函数结果替换值

来自分类Dev

用数组公式替换IF(AND))函数

来自分类Dev

用函数结果替换值

来自分类Dev

用rsync替换cp函数

来自分类Dev

用数组替换函数字