我非常喜欢_ast模块提供的选项,它非常强大。有没有一种方法可以从中获取完整的AST呢?
例如,如果我获取以下代码的AST:
通过使用:
我认为这种事情应该是可能的。问题是如何?
编辑:我所说的最低级别不是访问“可见”的内容。我也想获取listdir的实现的AST:像执行它的stat和其他函数调用一样。
例如,如果我获取以下代码的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和其他函数调用一样。