Python 如何强制pyparsing将中缀符号“括起来”;9+;2+;3“;

Python 如何强制pyparsing将中缀符号“括起来”;9+;2+;3“;,python,pyparsing,Python,Pyparsing,让我们看一下pyparsing文档中最简单的算术示例 更具体地说,我正在研究定义为左关联的“+”操作,以及我们解析“9+2+3”的第一个示例测试 我所期望的解析结果是((9+2)+3),也就是说,首先计算9和2上的中缀二进制运算符,然后计算结果和3上的中缀二进制运算符。然而,我得到的是(9+2+3),都在同一个水平上,这真的没有多大帮助,毕竟我现在必须自己决定评估的顺序,但它被定义为左关联。为什么我不得不把自己加进去?我错过了什么 感谢与问候您可以使用相应的运算符递归地减少每个列表。当然可以,但

让我们看一下pyparsing文档中最简单的算术示例

更具体地说,我正在研究定义为左关联的“+”操作,以及我们解析“9+2+3”的第一个示例测试

我所期望的解析结果是((9+2)+3),也就是说,首先计算9和2上的中缀二进制运算符,然后计算结果和3上的中缀二进制运算符。然而,我得到的是(9+2+3),都在同一个水平上,这真的没有多大帮助,毕竟我现在必须自己决定评估的顺序,但它被定义为左关联。为什么我不得不把自己加进去?我错过了什么


感谢与问候

您可以使用相应的运算符递归地减少每个列表。当然可以,但这样做也可能会出错。想想“1-2+3”。我可以试试看,但我也可能会犯错误,如果pyparsing按照人们的预期运行,我就不可能犯这个错误