Fin*_*ood 1 python-sphinx autodoc numpydoc
我有一个派生自Python 标准库类的类,它有许多公共方法。我的自定义类应该作为包装器,直接提供使用其协议与我的设备进行通信的方法。因此,我只想在自动摘要表中包含一些选定的继承方法。
.. autoclass:: my_module.MyClass
:members:
:show-inheritance:
.. autosummary::
my_method
another_method
Run Code Online (Sandbox Code Playgroud)
该..autosummary::块完全符合我的要求,但..autoclass::会自动创建完整的方法表。有没有办法禁用此功能?
直接使用autosummary指令,我可以生成一个仅包含my_method和 的方法表another_method:
.. autosummary::
my_method
another_method
Run Code Online (Sandbox Code Playgroud)
但是,当使用autoclass或automodule 而不使用以下自动摘要指令时,我仍然会得到一个方法表,该方法表看起来与上面的自动摘要块创建的方法表一模一样,只是包含所描述的所有方法:
.. autoclass:: my_module.MyClass
:members:
:show-inheritance
Run Code Online (Sandbox Code Playgroud)
“问题”不在autodoc或autosummary内部。
虽然问题中没有提到我正在使用numpydoc,它正在生成附加的自动汇总表。
如numpydoc 文档中所述,可以通过添加numpydoc_show_inherited_class_members = False到 sphinx来禁用此功能conf.py。