SymPy - Funktion sympify ()

Die Funktion sympify () wird verwendet, um einen beliebigen Ausdruck so zu konvertieren, dass er als SymPy-Ausdruck verwendet werden kann. Normale Python-Objekte wie Ganzzahlobjekte werden in SymPy konvertiert. Ganzzahlige Zeichenfolgen usw. werden ebenfalls in SymPy-Ausdrücke konvertiert.

>>> expr="x**2+3*x+2" 
>>> expr1=sympify(expr) 
>>> expr1 
>>> expr1.subs(x,2)

Das obige Code-Snippet liefert die folgende Ausgabe:

12

Jedes Python-Objekt kann in ein SymPy-Objekt konvertiert werden. Da die Konvertierung jedoch intern die Funktion eval () verwendet, sollte kein nicht bereinigter Ausdruck verwendet werden, da sonst SympifyError ausgelöst wird.

>>> sympify("x***2")
---------------------------------------------------------------------------

SympifyError: Sympify des Ausdrucks 'konnte' x *** 2 '' konnte nicht analysiert werden, da eine Ausnahme ausgelöst wurde.

Die Funktion sympify () akzeptiert folgende Argumente: * strict: Standard ist False. Bei der Einstellung True werden nur die Typen konvertiert, für die eine explizite Konvertierung definiert wurde. Andernfalls wird SympifyError ausgelöst. * evaluieren: Wenn diese Option auf False gesetzt ist, werden Arithmetik und Operatoren ohne Auswertung des Ausdrucks in ihre SymPy-Äquivalente konvertiert.

>>> sympify("10/5+4/2")

Das obige Code-Snippet liefert die folgende Ausgabe:

4

>>> sympify("10/5+4/2", evaluate=False)

Das obige Code-Snippet liefert die folgende Ausgabe:

$\frac{10}{5}+\frac{4}{2}$