微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我可以检索已经解析的函数定义吗?

如何解决我可以检索已经解析的函数定义吗?

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

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

例如这样的一行:

a = b(c,d(5))

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

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

解决方法

我想我已经找到了。

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。