我正在努力弄清楚如何将我的Python类的特定成员的文档放在Sphinx文档的特定章节中,理想情况下是如何在另一部分中自动记录其余内容.
我有一个Python课
class MyClass(object):
def funky(self, arg):
"""Some docs."""
...
在my / module.py中定义,它可以按预期工作,并且我可以使用
***************************
MyModule - :mod:`my.module`
***************************
.. automodule:: my.module
.. autoclass:: MyClass
:members:
:undoc-members:
:show-inheritance:
但是,当我试图更好地控制文档的组织时,我无法正常工作.具体来说,我想在明确的部分中记录一些成员(这里仅显示一个,但是会有几个),其余成员作为一个组自动记录.
但是当我尝试例如
***************************
MyModule - :mod:`my.module`
***************************
To document
===========
Things that are not yet documented.
.. automodule:: my.module
.. autoclass:: MyClass
:members:
:undoc-members:
:show-inheritance:
:exclude-members: funky
Funky things
------------
Some funky things.
.. automethod:: funky
我懂了
WARNING: don’t know which module to import for autodocumenting u’funky’ (try placing a “module” or “currentmodule” directive in the document, or giving an explicit module name)
但没有变化
.. currentmodule:: my.module
.. class:: MyClass
.. automethod:: funky
要么
.. currentmodule:: my.module
.. automethod:: funky
等把我带到任何地方.
如何在Sphinx文档的特定位置自动记录班级的某些成员?
解决方法:
这有效:
.. currentmodule:: my.module
.. automethod:: MyClass.funky
您可以跳过.. currentmodule ::并执行以下操作:
.. automethod:: my.module.MyClass.funky
第三种选择:
.. currentmodule:: my.module
.. autoclass:: MyClass
.. automethod:: funky