我喜欢_ast模块提供的选项,它真的很强大。有没有办法从中获取完整的 AST?
例如,如果我得到以下代码的 AST:
import os
os.listdir(".")
通过使用 :
ast = compile(source_string,"<string>","exec",_ast.PyCF_ONLY_AST)
ast对象的主体将有两个元素,一个import对象和一个expr对象。但是,我想更进一步,获取import和listdir的 AST,换句话说,我想让_ast降到可能的最低级别。
我认为这种事情应该成为可能是合乎逻辑的。问题是如何?
编辑:尽可能最低级别,我并不是说要访问“可见”的内容。我也想获得用于实现listdir的 AST :比如stat和其他可能为其执行的函数调用。