文件之间的python3继承树



我有包含多个类的python3文件。我想知道是否有一个工具可以在所有python脚本中生成继承树?

我读过关于python类继承树的文章,但它不起作用:

  1. 我创建了一个虚拟环境:

python3 -m venv tmp_python

source source tmp_python/bin/activate

  1. 然后我创建了两个文件:a.py:
class a(object): 
pass
class b(a):
pass
class c(b): 
pass
class d(c): 
pass

和一个文件b.py:

class e(b):
pass

我想要一棵树:

a-->b-->c->d
|
+-->e

我试着使用,但我有这个标准错误:

(tmp_python) [usr@archlinux ~]$ epydoc -v --graph=classtree a.py b.py
Traceback (most recent call last):
File "/home/seb/tmp_python/bin/epydoc", line 12, in <module>
from epydoc.cli import cli
File "/home/seb/tmp_python/lib/python3.10/site-packages/epydoc/cli.py", line 428
print 'n' + msg.rstrip() + 'n'
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(...)?

看起来epydoc不支持python3。我只是遇到了同样的问题。错误消息表明print语句是用Python2.x语法编写的(缺少括号(。如果你修复了这个问题,文件中会有更多的错误(我刚刚尝试过(。所以它回答了你的问题,但没有解决问题,对不起。