我正在使用Sphinx的autodoc插件自动记录一组模块.我有一个接受的函数,*args我想覆盖文档以显示funcname(arg1[, arg2[, ...]])Python stdlib文档使用的稍微好一点的样式.
是否可以覆盖特定功能的autodoc输出?
我有一个类似这样的模块:
#!/usr/bin/env python
#: Documentation here.
#: blah blah blah
foobar = r'Some really long regex here.'
def myfunc(val=foobar):
'''Blah blah blah'''
pass
Run Code Online (Sandbox Code Playgroud)
...我有一个.rst类似这样的文件:
:mod:`my_module` Module
-----------------------
..automodule:: my_module
:members:
:private-members:
:show-inheritance:
Run Code Online (Sandbox Code Playgroud)
当我构建文档时,我得到一个带有代码片段的html文件,如下所示:
mymodule.foobar.foobar = '这里有一些荒谬漫长而丑陋的正则表达式'
这里有额外的文档
MyModule的.myfunc(val ='这里有一些荒谬漫长而丑陋的正则表达式')
等等等等等等
基于这个stackoverflow帖子,我想我可以通过改变我的模块来改变它:
#!/usr/bin/env python
#: .. data:: my_module.foobar
#: Extra documentation here
foobar = 'Some really long regex here.'
def myfunc(val=foobar):
'''.. function:: my_module.myfunc(val=foobar)
Blah blah blah'''
pass
Run Code Online (Sandbox Code Playgroud)
......但是那并没有做到这一点,只是将丑陋的签名作为身体的一部分附加.有谁知道我怎么能正确地覆盖它?
(我正在使用Sphinx v1.1.3,顺便说一下.)
我正在使用Sphinx从代码生成文档.有没有人知道是否有办法控制默认参数生成的浮点数的格式.
例如,如果我有以下功能:
def f(x = 0.97):
return x+1
Run Code Online (Sandbox Code Playgroud)
生成的文档最终看起来像:
foo(x = 0.96999999999997)
Run Code Online (Sandbox Code Playgroud)
显然这是一个浮点精度问题,但有没有办法让文档看起来不那么难看?
在我的代码中,我有
X_DEFAULT = ['a', 'long', 'list', 'of', 'values', 'that', 'is', 'really', 'ugly', 'to', 'see', 'over', 'and', 'over', 'again', 'every', 'time', 'it', 'is', 'referred', 'to', 'in', 'the', 'documentation']
Run Code Online (Sandbox Code Playgroud)
然后
def some_function(..., x=X_DEFAULT, ...):
Run Code Online (Sandbox Code Playgroud)
以便在我的 Sphinx 文档中,使用(例如,使用.. autofunction::等)我X_DEFAULT在签名中得到了整个长而笨重的扩展值some_function:
some_function ( ..., x=['a', 'long', 'list', 'of', 'values', 'that', 'is', 'really', 'ugly', 'to', '看到', 'over', 'and', 'over', 'again', 'every', 'time', 'it', 'is', 'referred', 'to', 'in', 'the' , '文档'], ... )
有没有办法在生成的文档中抑制这种替换,最好有一个链接到定义X_DEFAULT:
some_function ( ..., x= X_DEFAULT …
我有一些功能,例如
f(x, propagation_speed=scipy.constants.c)
Run Code Online (Sandbox Code Playgroud)
我跑去sphinx-apidoc生成关于他们和他们的文档make html获取最终的 HTML 数据。
唉,狮身人面像扩展了常数并给了我类似的东西
f(x, propagation_speed=299792458.0)
Run Code Online (Sandbox Code Playgroud)
我不能以某种方式禁用文档字符串中的默认值扩展吗?我可以添加一些东西吗conf.py?