假设我有一个X类,如何检查它的基类/基类等等?
我在使用Eclipse和PyDev,例如对于Java,你可以在类名上按下CTRL+T来查看继承关系,如下所示:
java.lang.Object java.lang.Number java.lang.Integer
Python可行吗?
如果无法在Eclipse PyDev中实现,我应该在哪里查找此信息?
假设我有一个X类,如何检查它的基类/基类等等?
我在使用Eclipse和PyDev,例如对于Java,你可以在类名上按下CTRL+T来查看继承关系,如下所示:
java.lang.Object java.lang.Number java.lang.Integer
Python可行吗?
如果无法在Eclipse PyDev中实现,我应该在哪里查找此信息?
__mro__
的属性,它给出了一个类可以继承方法或属性的所有父类。从左到右阅读它们。例如:assert bool.__mro__ == (<class 'bool'>, <class 'int'>, <class 'object'>)
assert True.__class__.__mro__ == (<class 'bool'>, <class 'int'>, <class 'object'>)
mro
方法,因此您可以分别调用bool.mro()
和True.__class__.mro()
(它返回列表而不是元组)。 - derenioparso
库中绘制所有来自tree.py
的类:# Generate classes_tree_full.png with full UML-style class boxes
$ pyreverse -mn -o png -p tree_full Lib\site-packages\parso\python\tree.py
# Generate classes_tree_short.png with only class names in boxes
$ pyreverse -mn -k -o png -p tree_short Lib\site-packages\parso\python\tree.py
parso.python.tree.Literal
而不仅仅是 Literal
,请将 -mn
更改为 -my
。pyreverse
还支持通过glob
模式处理多个文件。按下command+o,然后按Ctrl+O显示父级层次结构
查看此博客http://pydev.blogspot.jp/2015/03/navigating-through-your-code-when-in.html