【发布时间】:2018-12-27 19:05:52
【问题描述】:
我正在尝试打印 ((a AND (b OR c OR d)) AND e AND (f OR g)) 形式的复杂逻辑表达式的所有可能性。例如输出应该是
a, b, e, f
a, c, e, f
a, d, e, f
a, b, e, g
a, c, e, g
a, d, e, g
等等,
我正在使用解析器(PLY for python),它使用LARL 算法,但我不知道它是否是解决此类问题的正确方法。
我找不到以正确方式打印所有可能性的方法,所以我想也许 PLY 它不是完成这项任务的正确工具。
您是否建议我编写自己的解析器来解决此类问题?
【问题讨论】:
-
你不应该期望解析器除了解析字符串之外做任何事情。对生成的解析树执行计算不是解析器任务的一部分。
标签: python parsing yacc ply lalr