Sympy的lambdify函数只能将我们的表达式转换为lambda函数。
x, y = symbols('x y')
expr = x + 2*y
f = lambdify(x, expr)
但是如何将表达式输出为Python函数呢?像这样:
def expr(x, y):
return x + 2*y
或者是否可以使用Sympy为我们的函数表达式自动生成python脚本文件expr.py
?
简而言之,需要实现matlabFunction
在Matlab(Convert symbolic to matlab function)中的作用
答案 0 :(得分:1)
不太确定这是否是您要寻找的,但是sympy具有octave (matlab) code printing option。
这里是一个简短的例子:
a, b, c = [[] for i in range(3)]
e, f, g = [1 for i in range(3)]
答案 1 :(得分:0)
from sympy import *
x, y = symbols('x y')
expr = x + 2*y
func = lambdify([x,y], expr)
f=func(1,2)
输出:5
不确定这是否是您想要的。