【发布时间】:2021-02-05 13:26:13
【问题描述】:
假设您有一个包含许多 python 模块的文件夹,每个模块都包含函数。我想用 vertices = 函数名来可视化一个图。我想如下定义边:如果函数 F1 调用 F2,则 F1 的顶点通过有向边连接到 F2。
单个模块的最小示例:
# --- module.py ---
def F1():
pass
def F2():
F1()
def F3():
F1()
def F4():
F2()
所需的输出将是具有顶点的图形:V = {F1, F2, F3, F4} 和边 E = {F2->F1, F3->F1, F4->F2}。
是否有方便的库来执行此操作?否则我想我可以将模块转换为字符串,识别函数并使用一些正则表达式找到内部调用。
谢谢
【问题讨论】:
标签: python graph project-structure