通过对"1+1 \n 2+2“结果的分析,我认为这是两个不相关的语句,但却减少了它们,如何使它们变得无关,p_statement_expr(p):‘’语句:表达式打印p1
def p_expr_num(p):
'''expression : NUMBER'''
p[0] = p[1]
if "__main__" == __name__:
parser = yacc.yacc(tabmodule="parser_main")
import time
t = time.time()
for i in range(1):
result = parser.parse("1+1 \n 2+2", debug=debug)
# print time.time() - t
# print result发布于 2019-01-07 20:31:41
Ply没有对第二个表达式做任何事情。
假设您正在显示所有语句,您的语法与一条语句完全匹配。Ply期望输入在这一点上终止,但它不会抱怨一个意外的数字。
https://stackoverflow.com/questions/54072476
复制相似问题