【问题标题】:creating a dependency tree of C functions in Python在 Python 中创建 C 函数的依赖树
【发布时间】:2018-11-04 13:27:22
【问题描述】:

我正在尝试使用 python 解析 C 程序,我需要找到一种方法来实现显示其依赖关系的所有函数的图形。例如,如果我有这样的程序:

f1();
f2(){
 f1();
}
f3(){
 f1();
}

图表将是:

f2   f3
|    /
|   /
f1  

我希望将图表呈现为某种形式的数据结构(例如,不可视化的树)有人有什么建议吗?

编辑:澄清一下,主要问题是我如何做解析方法。

【问题讨论】:

    标签: python parsing data-structures graph-theory


    【解决方案1】:

    我会简单地使用列表列表。您的示例将转换为 [f1,[f2, f3]]

    【讨论】:

    • 解析时如何创建该列表?请记住,真实文件中的依赖关系比示例更复杂
    • 现在我想它也许一个 dict 更适合这个......所以一开始你在文件my_dict[f1]={} 中找到它们时添加键。然后,当您在文件my_dict[f1][f2]=info_about_f2 中找到新功能时,您应该添加它。这有意义吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-20
    • 2011-07-21
    • 1970-01-01
    • 2019-04-23
    • 2023-03-17
    • 1970-01-01
    • 2021-07-17
    相关资源
    最近更新 更多