우선 순위를 찾을 수있는 대부분의 예제에서 그룹화 된 (oneOf) 리터럴을 사용하여 동일한 수준을 설정합니다. 이 방법을 사용하면 2 가지 (또는 그 이상) 중 어떤 것을 찾아보고 평가를 계속해야합니다. 내가하고 싶은 것은 사업자를 분할하여 어떤 사업자인지 직접 파악하고 평가하는 것입니다.pyparsing 우선 순위 분할
arith_prec = [
(subtract_op, 2, opAssoc.LEFT, ast.Substraction),
(add_op, 2, opAssoc.LEFT, ast.Addition),
(divide_op, 2, opAssoc.LEFT, ast.Division),
(multiplication_op, 2, opAssoc.LEFT, ast.Multiplication),
]
이것은 내가 전에했지만, 그것이 둘 중 어느 (또는 그 이상)과 일치했다 무엇
이
내가 구현하고자하는 것입니다 만, 우선 순위 수준은 이제 잘못plusop = oneOf(['+', '-'])
multop = oneOf(['*', '/'])
arith_prec = [
(plusop, 2, opAssoc.LEFT,),
(multop, 2, opAssoc.LEFT,),
]
이 방법이 있습니까? 내가 oneOf 또는 arith_prec의 내부를 사용하여 테스트했지만 아무 소용이 없습니다.
감사합니다. 그래서 내가 시작한 곳으로 돌아가서 계속해야 할 것입니다. –
Btw, 우선 순위가 뒤로 향합니다 - 'multop'이 먼저 가야합니다. – PaulMcG