Python,Sympy:如何将sympy表达式输出为Python函数?

时间:2019-05-19 18:14:39

标签: python function numpy sympy symbolic-math

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)中的作用

2 个答案:

答案 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

不确定这是否是您想要的。