Используя pyparsing, у меня есть правила для анализа математического выражения с помощью круглых скобок (), +, -, * и /. Операции могут быть вложенными, и анализатор знает, как этого добиться. Кредит идет на PaulMcG .
Выражение может иметь логические операции с ключевым словом iif
следующим образом:
iif(condition, value_if_true, value_if_false)
Условие имеет регулярные операторы =,> =, <=,>, <, <>, &, |
Есть способ вычислить результат из строкового выражения. Но я не могу найти способ получить окончательное значение, так как условие может иметь вложенные условия.
Итак, есть ли способ проинструктировать pyparsing для вычисления этого конечного значения с использованием логических операций, помимо математических операций? Или есть какой-либо способ удалить условия и вернуть исходное выражение как одно математическое выражение, а затем вычислить окончательное значение?
PS: я использую python 3.6.7 и Linux Mint 19.1.