我有包含多个类的python3文件。我想知道是否有一个工具可以在所有python脚本中生成继承树?
我读过关于python类继承树的文章,但它不起作用:
- 我创建了一个虚拟环境:
python3 -m venv tmp_python
source source tmp_python/bin/activate
- 然后我创建了两个文件: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语法编写的(缺少括号(。如果你修复了这个问题,文件中会有更多的错误(我刚刚尝试过(。所以它回答了你的问题,但没有解决问题,对不起。