导出python源码的函数调用关系图的方法

导出python源码的函数调用关系图的方法,第1张

导出python源码的函数调用关系图的方法
  • 1. pycallgraph+graphviz
  • 2. pyreverse+graphviz
  • 3. pycharm(推荐)
  • 4. starUML
  • 5. EnterpriseArchitecture(尚未尝试)

1. pycallgraph+graphviz

  需要修改源码,在源码中加入pycallgraph代码,用于导出函数调用关系描述语言。


该方法因为需要修改源码,不适合大工程。


详情可参考mb5fdb1266ce6df的文章和Python小屋屋主的文章)。


2. pyreverse+graphviz

  该方法不需要修改源码,演示效果也很好,但是运行指令时有可能会出现如下报错。


plint github开源库对于此问题的问答至今(2022年4月12日)没有很好的解决,他们分别是问答1和问答2。


具体 *** 作参考:生成项目UML框架图-pyreverse介绍、将Python源码自动生成UML类图和python的UML类图自动生成工具–pyreverse安装和使用这三篇博客。


astroid.exceptions.InferenceError: Inference failed for all members of ().
3. pycharm(推荐)

  最推荐的一种方式,效果很好, *** 作很傻瓜,具体方法如下:(引用自草票在其问答中的回复)
  生成python脚本类图的最简单方法是使用Pycharm IDE。


第1步:为python脚本创建一个包(Alt + Insert→Python包) 第2步:右键单击创建的包文件,然后选择选项图 第3步:选择图表选项后,您可以选择顶部的选项来添加方法 更多信息:https://confluence.jetbrains.com/display/PYH/Working+with+UML+class+diagrams+in+PyCharm

4. starUML

实验过不行,因为至今(2022年4月12日),其python的插件还不支持逆向生成python的UML图,但是C++可以(tools -> C++ -> Reverse Code … -> 选择头文件)。


5. EnterpriseArchitecture(尚未尝试)

可以参考如下教程:

  1. 使用Sparx Systems Enterprise Architect将python源代码转换为uml图
  2. 用EA(EnterpriseArchitect)将C++的.h文件转换成UML类图
  3. 用EnterpriseArchitect从源码自动生成类图
  4. enterprise architect (EA) 源码生成UML类图,帮助理解项目工程

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/607827.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-14
下一篇 2022-04-14

发表评论

登录后才能评论

评论列表(0条)

保存