14

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

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

4

1 回答 1

20

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

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

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

但是,具有覆盖签名的函数不会与使用automodule. autofunction为每个函数使用显式指令可以解决这个问题:

.. autofunction:: firstfunc

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

.. autofunction:: thirdfunc

添加

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

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

   Extra documentation here.  

要同时覆盖签名和文档字符串,请使用function而不是autofunction.

加法2

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

于 2011-03-20T11:29:56.670 回答