一位同事希望从大量的Python源代码生成UML类图。他主要关心继承关系,稍微关注组合关系,对于只是Python原始类型的类属性不太在意。
源代码相当直观,没有什么复杂的元类魔法等。它主要是基于Python 1.5.2时代的,还有一些“现代”的2.3ish的东西。
有什么最好的现有解决方案可以推荐吗?
一位同事希望从大量的Python源代码生成UML类图。他主要关心继承关系,稍微关注组合关系,对于只是Python原始类型的类属性不太在意。
源代码相当直观,没有什么复杂的元类魔法等。它主要是基于Python 1.5.2时代的,还有一些“现代”的2.3ish的东西。
有什么最好的现有解决方案可以推荐吗?
pip install pylint
或者如果你的频道之一是conda-forge
,则可以通过conda install pylint
找到。 - Jim Pivarski--filter-mode=ALL
即可。 - craymichaelprint '\n' + msg.rstrip() + '\n'
,提示 SyntaxError: Missing parentheses in call to 'print'. Did you mean print(...)?
- Pablo LION一些表现良好的程序可以绘制成图表,但在一般情况下,这是不可能的。Python对象可以在运行时扩展,并且任何类型的对象都可以赋值给任何实例变量。要找出一个对象可以包含指针的类(组合)需要完全理解程序的运行时行为。
Python的元类功能意味着推论继承结构也需要完全理解程序的运行时行为。
要证明这是不可能的,你可以认为如果存在这样的UML图表生成器,则可以将任意程序中的“halt”语句转换为会影响UML图表的语句,并使用UML图表生成器来解决停机问题,但我们知道这是不可能的。
.zip
归档文件中安装它。 - Luís de SousaSPE IDE具有内置的UML创建器。只需在SPE中打开文件,然后点击UML选项卡即可。
我不知道它是否符合您的需求,但使用它无需进行任何额外的下载或配置。
Umbrello也可以做到这一点。在菜单中选择Code->import project,然后指向您的项目根目录。然后它会为您反转代码...