Autodoc继承-不显示'Object'中的成员

问题描述 投票:3回答:1

我正在使用autodoc记录一些类,到目前为止,:members::private-members::special-members:完全可以得到我想要的东西。但是,我也希望看到继承的成员。

[还有一个附加选项:inherited-members:,它为我提供了我想要的所有东西...以及我不需要想要的其他废话,因为它显示了从Object继承的成员。

是否有办法让它忽略从某些父级继承的成员,或者只遵循继承链,直到我自己定义的类,而不是内置的类?

python python-sphinx autodoc
1个回答
0
投票

您确实可以从3.0开始从:inherited-members:中排除父母,但是它应该not默认显示从object继承的成员:

对于类和异常,在记录所有成员时,将从基类继承的成员保留下来,除非您为inherited-members加上members选项:

.. autoclass:: Noodle
     :members:
     :inherited-members:

可以与undoc-members结合使用,以记录all类或模块的可用成员。

可能需要anchestor类来记录从中继承的成员。 默认情况下,object类的成员未记录。要显示所有内容,请在选项上输入None

例如;如果您的类Foo派生自list类,并且您不想记录list.__len__(),则应指定选项:inherited-members: list以避免列表类的特殊成员。

((大胆的矿井)

© www.soinside.com 2019 - 2024. All rights reserved.