Как вычислить результат из выражения с условными выражениями - PullRequest
1 голос
/ 17 июня 2019

Используя pyparsing, у меня есть правила для анализа математического выражения с помощью круглых скобок (), +, -, * и /. Операции могут быть вложенными, и анализатор знает, как этого добиться. Кредит идет на PaulMcG .

Выражение может иметь логические операции с ключевым словом iif следующим образом:

iif(condition, value_if_true, value_if_false)

Условие имеет регулярные операторы =,> =, <=,>, <, <>, &, |

Есть способ вычислить результат из строкового выражения. Но я не могу найти способ получить окончательное значение, так как условие может иметь вложенные условия.

Итак, есть ли способ проинструктировать pyparsing для вычисления этого конечного значения с использованием логических операций, помимо математических операций? Или есть какой-либо способ удалить условия и вернуть исходное выражение как одно математическое выражение, а затем вычислить окончательное значение?

PS: я использую python 3.6.7 и Linux Mint 19.1.

...