我可以在Python中查看lexer和parser的中间结果吗?

2024-03-29 11:30:08 发布

您现在位置:Python中文网/ 问答频道 /正文

随着Python3.9的发布,它将解析器从LL(1)解析器更改为基于PEG的解析器,这让我想到我从未见过Python的lexer或解析器(CPython)。据我所知,这幅画看起来像

source -> lexer -> TOKENS
TOKENS -> parser -> AST
AST -> ??? -> pyc file

是否可以查看这些中间结果(令牌、AST、我遗漏的任何其他结果)


Tags: parser解析器sourceastcpythonfilepycll
1条回答
网友
1楼 · 发布于 2024-03-29 11:30:08

ast.parse(some_string)将为您提供ast树。然后,您可以使用模块中的各种方法将其打印出来或以编程方式对其进行检查

相关问题 更多 >