在autodoc中,我知道您可以隐藏所有模块的文档字符串,如下所述: Exclude module docstring in autodoc
但有没有办法为某些模块而不是其他模块执行此操作,可能将某些参数传递给automodule
?换句话说,对于给定的模块,我希望有时包括文档字符串,有时会跳过它。如果我这样做:
.. automodule:: foo
:members: foo, foo.bar
Sphinx为foo和foo.bar生成文档字符串。但是,做
.. automodule:: foo
:members: foo.bar
不会隐藏模块docstring。
答案 0 :(得分:1)
要隐藏模块的文档字符串,请使用指令的相应普通py
域版本:py:module
或py:currentmodule
。前者用于记录模块的主要位置,并且只应出现一次。后者适用于您需要相同名称解析属性的其他位置,但不能将其作为模块的官方文档位置。
所有autodoc
域指令都将遵循常规py
域指令设置的命名范围。来自文档:
注意强>
正如
py:class
尊重当前py:module
一样,autoclass
也会这样做。同样,automethod
会尊重当前的py:class
。