SymPy - fonction sympify ()
La fonction sympify () est utilisée pour convertir toute expression arbitraire afin qu'elle puisse être utilisée comme une expression SymPy. Les objets Python normaux tels que les objets entiers sont convertis dans SymPy. Entiers, etc., les chaînes sont également converties en expressions SymPy.
>>> expr="x**2+3*x+2"
>>> expr1=sympify(expr)
>>> expr1
>>> expr1.subs(x,2)
L'extrait de code ci-dessus donne la sortie suivante -
12
Tout objet Python peut être converti en objet SymPy. Cependant, puisque la conversion utilise en interne la fonction eval (), l'expression non assainie ne doit pas être utilisée, sinon SympifyError est levée.
>>> sympify("x***2")
---------------------------------------------------------------------------
SympifyError: Sympify de l'expression 'n'a pas pu analyser' x *** 2 '' a échoué, car une exception a été déclenchée.
La fonction sympify () prend les arguments suivants: * strict: la valeur par défaut est False. S'il est défini sur True, seuls les types pour lesquels une conversion explicite a été définie sont convertis. Sinon, SympifyError est déclenché. * evaluer: Si la valeur est False, l'arithmétique et les opérateurs seront convertis en leurs équivalents SymPy sans évaluer l'expression.
>>> sympify("10/5+4/2")
L'extrait de code ci-dessus donne la sortie suivante -
4
>>> sympify("10/5+4/2", evaluate=False)
L'extrait de code ci-dessus donne la sortie suivante -
$\frac{10}{5}+\frac{4}{2}$