小编典典

是否可以覆盖Sphinx autodoc的特定功能?

python

我正在使用Sphinx的autodoc插件来自动记录一组模块。我有一个函数accepts *args,我想重写文档以显示funcname(arg1[, arg2[, ...]])Python stdlib文档使用的稍微更好的样式。

是否可以覆盖特定功能的自动文档输出?


阅读 144

收藏
2020-12-20

共1个答案

小编典典

可以使用autofunction以下方法覆盖签名:

.. automodule:: yourmodule
   :members:
   :exclude-members: funcname

.. autofunction:: funcname(arg1[, arg2[, ...]])

但是,具有覆盖签名的函数不会与通过引入的其他函数进行排序automoduleautofunction对每个函数使用显式指令可以解决此问题:

.. autofunction:: firstfunc

.. autofunction:: funcname(arg1[, arg2[, ...]])

.. autofunction:: thirdfunc

加成

您还可以附加到文档字符串:

.. autofunction:: funcname(arg1[, arg2[, ...]])

   Extra documentation here.

要覆盖签名和文档字符串,请使用function代替autofunction

加法2

也可以通过将签名作为函数docstring的第一行来覆盖签名。有关详细信息,请参见此答案

2020-12-20