我使用这个开源这里来制作自动驾驶汽车。
整个项目由许多文件夹和位于其中的 python 文件组成。 不幸的是,我不知道所有这些 python 文件是如何连接的。我确实了解主要文件及其用途。
我想制作一个关于每个 python 文件如何相互连接的流程图。 是否可以创建仅包含 python 文件的流程图(不包括函数和其他内容)?
我读过一些关于模块“Python call graph”的内容,但不确定它是否对我解决这个问题有帮助
欢迎提出有关如何以图形方式显示项目结构的任何想法。我想将它用于我的文档。
这不是一个“流程图”——流程图代表工作流或过程——也不是调用图(代表哪个函数/方法调用哪个其他函数/方法),而是一个依赖图,IOW哪个模块(或脚本)依赖哪个其他模块(“取决于”=>“使用定义的东西”)。
这可以通过检查进口来找到。除非有动态导入,否则这可以通过静态分析来完成(手动 - 只需阅读代码并报告你在纸上找到的内容 - 或使用 grep 和/或类似工具自动),只需阅读
import
每个模块中的语句。
或者您当然可以尝试使用现有的 python 包之一来执行此操作 - 现在您知道要查找的术语(“依赖图”),您应该(希望)能够找到可用的东西。
我对软件可视化也很感兴趣。 对于Python,我发现但没有测试这个:
https://github.com/thebjorn/pydeps
https://www.scivision.dev/python-dependency-graph/
我很高兴阅读您的研究结果。