首页 > 解决方案 > 抽象语法树

问题描述

我正在尝试使用抽象语法树(AST)在 python 代码中获取以下元素

  1. python文件中的类列表
  2. 在每个类下,我想获取其中可用的函数(def)
  3. 在每个函数下,我想获取从中调用它的函数

我尝试使用以下代码,但它看起来很抽象,我无法在 AST 中找到 Node 定义的最佳文档

data = open(test.py).read()
    return ast.parse(data, test.py)
    for node in ast.walk(tree):
        if isinstance(node, ast.Name):
            print(node.id)

我想要一个示例代码来遍历其中的三种可能情况。

任何帮助表示赞赏。

标签: pythonabstract-syntax-tree

解决方案


推荐阅读