相关疑难解决方法(0)

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

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

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

python python-sphinx autodoc

12
推荐指数
1
解决办法
6223
查看次数

在sphinx的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.foob​​ar = '这里有一些荒谬漫长而丑陋的正则表达式'

这里有额外的文档

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,顺便说一下.)

python documentation python-sphinx

10
推荐指数
1
解决办法
3912
查看次数

Sphinx浮点格式化

我正在使用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)

显然这是一个浮点精度问题,但有没有办法让文档看起来不那么难看?

python formatting python-sphinx

7
推荐指数
1
解决办法
440
查看次数

我可以在 Sphinx 文档中抑制变量扩展吗?

在我的代码中,我有

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 …

python variables signature python-sphinx autodoc

6
推荐指数
1
解决办法
776
查看次数

Sphinx 文档:如何禁用默认参数扩展?

我有一些功能,例如

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

python python-sphinx

5
推荐指数
1
解决办法
1055
查看次数