SymPy - função sympify ()
A função sympify () é usada para converter qualquer expressão arbitrária de forma que possa ser usada como uma expressão SymPy. Objetos Python normais, como objetos inteiros, são convertidos no SymPy. Inteiros, etc., strings também são convertidos em expressões SymPy.
>>> expr="x**2+3*x+2"
>>> expr1=sympify(expr)
>>> expr1
>>> expr1.subs(x,2)
O trecho de código acima fornece a seguinte saída -
12
Qualquer objeto Python pode ser convertido em objeto SymPy. No entanto, como a conversão usa internamente a função eval (), a expressão não higienizada não deve ser usada, caso contrário, SympifyError é gerado.
>>> sympify("x***2")
---------------------------------------------------------------------------
SympifyError: Sympify da expressão 'não pôde analisar' x *** 2 '' falhou, devido à exceção sendo levantada.
A função sympify () leva os seguintes argumentos: * strict: o padrão é False. Se definido como True, apenas os tipos para os quais uma conversão explícita foi definida são convertidos. Caso contrário, SympifyError é gerado. * avaliar: Se definido como False, a aritmética e os operadores serão convertidos em seus equivalentes SymPy sem avaliar a expressão.
>>> sympify("10/5+4/2")
O trecho de código acima fornece a seguinte saída -
4
>>> sympify("10/5+4/2", evaluate=False)
O trecho de código acima fornece a seguinte saída -
$\frac{10}{5}+\frac{4}{2}$