📅  最后修改于: 2020-11-05 04:41:09             🧑  作者: Mango
sympify()函数用于转换任意表达式,以便可以将其用作SymPy表达式。普通的Python对象(例如整数对象)在SymPy中转换。字符串等也将转换为SymPy表达式。
>>> expr="x**2+3*x+2"
>>> expr1=sympify(expr)
>>> expr1
>>> expr1.subs(x,2)
上面的代码片段给出了以下输出-
12
任何Python对象都可以在SymPy对象中转换。但是,由于转换在内部使用eval()函数,因此不应使用未经处理的表达式,否则会引发SympifyError。
>>> sympify("x***2")
---------------------------------------------------------------------------
SympifyError:由于引发了异常,表达式’无法解析’x *** 2’失败。
sympify()函数采用以下参数:* strict:默认为False。如果设置为True,则仅转换已定义显式转换的类型。否则,引发SympifyError。 *评估:如果设置为False,则算术和运算符将转换为它们的SymPy等效项,而不评估表达式。
>>> sympify("10/5+4/2")
上面的代码片段给出了以下输出-
4
>>> sympify("10/5+4/2", evaluate=False)
上面的代码片段给出了以下输出-
$ \ frac {10} {5} + \ frac {4} {2} $