【问题标题】:Can I retrieve already parsed definition of function?我可以检索已经解析的函数定义吗?
【发布时间】:2021-04-01 10:54:27
【问题描述】:

使用inspect.getsource,您可以在 Python 中检索函数的定义/源代码。有没有办法检索该定义但作为已解析的对象?

换句话说,我想获取一些对象的列表,而不是字符串,每个对象代表一行代码,并且该对象存储例如在该行调用的函数和所有参数那个函数等等。所以我希望那个对象是一棵树。

例如这样的一行:

a = b(c, d(5))

将是一棵树,其中根是“=”运算符,在其下方是变量“a”和函数“b”,在函数“b”下方是变量“c”和函数“d”,在函数“d”下方" 将是文字 5。

换句话说,我需要检查一个函数的定义,但使用 inspect.getsource,我需要先解析返回的字符串,以便我可以使用它。有什么方法可以避免进行解析并已经解析了吗?

【问题讨论】:

    标签: python function parsing reflection definition


    【解决方案1】:

    我想我已经找到了。

    Ast 包似乎是我要找的。​​p>

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-08-02
      • 1970-01-01
      • 1970-01-01
      • 2022-11-09
      • 1970-01-01
      • 2010-10-06
      • 2019-08-15
      相关资源
      最近更新 更多