仅适用于 Python 文件的 Python 调用图

问题描述 投票:0回答:2

我使用这个开源这里来制作自动驾驶汽车。

整个项目由许多文件夹和位于其中的 python 文件组成。 不幸的是,我不知道所有这些 python 文件是如何连接的。我确实了解主要文件及其用途。

我想制作一个关于每个 python 文件如何相互连接的流程图。 是否可以创建仅包含 python 文件的流程图(不包括函数和其他内容)?

我读过一些关于模块“Python call graph”的内容,但不确定它是否对我解决这个问题有帮助

欢迎提出有关如何以图形方式显示项目结构的任何想法。我想将它用于我的文档。

python flowchart
2个回答
2
投票

这不是一个“流程图”——流程图代表工作流或过程——也不是调用图(代表哪个函数/方法调用哪个其他函数/方法),而是一个依赖图,IOW哪个模块(或脚本)依赖哪个其他模块(“取决于”=>“使用定义的东西”)。

这可以通过检查进口来找到。除非有动态导入,否则这可以通过静态分析来完成(手动 - 只需阅读代码并报告你在纸上找到的内容 - 或使用 grep 和/或类似工具自动),只需阅读

import 
每个模块中的语句。

或者您当然可以尝试使用现有的 python 包之一来执行此操作 - 现在您知道要查找的术语(“依赖图”),您应该(希望)能够找到可用的东西。


2
投票

我对软件可视化也很感兴趣。 对于Python,我发现但没有测试这个:

https://github.com/thebjorn/pydeps

https://www.scivision.dev/python-dependency-graph/

我很高兴阅读您的研究结果。

© www.soinside.com 2019 - 2024. All rights reserved.