2024-04-25 23:33:03 发布
网友
假设我已经在解释器中导入了一个python模块。如何在解释器中获得导入模块(以及其中的任何函数和类)的抽象语法树?我不想重新解析源文件。谢谢!在
除了从源代码中获取AST似乎没有其他方法。如果你解释一下为什么你不想重新解析源文件,也许我们可以帮你。在
也许你能从这个食谱中找到一些灵感:
A function that outputs a human-readable version of a Python AST.
或者将compiler与inspect结合使用(当然,它仍然使用源代码):
compiler
inspect
>>> import compiler, inspect >>> import re # for testing >>> compiler.parse(inspect.getsource(re)) Module('Support for regular expressions (RE). \n\nThis module provides ...
除了从源代码中获取AST似乎没有其他方法。如果你解释一下为什么你不想重新解析源文件,也许我们可以帮你。在
也许你能从这个食谱中找到一些灵感:
或者将
compiler
与inspect
结合使用(当然,它仍然使用源代码):相关问题 更多 >
编程相关推荐