Bonjour, je voudrais créer une fonction qui parse une expression mathématique (un problème classique pour lequel je n'ai pas trouvé de solution en python). Le but serait quelque chose du genre :
analyse('2*x+(3+x)') renverrai une liste : ['+','2*x','3+x']
J'arrive à parser l'expression en faisant :
Le problème est que je n'ai pas trouvé l'instruction pour recréer le membre de gauche et de droite. Avez-vous une solution ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 import ast st = ast.parse("2*x+(3+x)").body[0] print st.value print st.value.left print st.value.right
Merci d'avance,
Vincent
P.S : Je ne veux pas utiliser sympy car il effectue des simplifications au moment de la conversion.
Partager