SymPy - sympify() 函数

  • 简述

    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 失败。
    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}$$