擅长:python、mysql、java
<p>可以在<a href="http://sphinx-doc.org/ext/autodoc.html#event-autodoc-process-signature" rel="nofollow">^{<cd1>}</a>事件的处理程序中编辑函数签名。在</p>
<p>事件处理程序的<code>signature</code>参数保存签名;格式为<code>(parameter_1, parameter_2)</code>的字符串。在下面的片段中,<code>split()</code>用于删除函数的最后一个参数:</p>
<pre><code>hidden = "_hidden_argument"
def process_sig(app, what, name, obj, options, signature, return_annotation):
if signature and hidden in signature:
signature = signature.split(hidden)[0] + ")"
return (signature, return_annotation)
def setup(app):
app.connect("autodoc-process-signature", process_sig)
</code></pre>
<p>结果是文档将把问题中函数的签名显示为<code>foo(x, y)</code>,而不是<code>foo(x, y, _hidden_argument=None)</code>。在</p>