Sphinx自动记录模块变量

时间:2016-02-09 19:16:41

标签: python python-sphinx

我正在尝试使用Sphinx来记录一个基本上是一系列变量赋值的python模块。具体来说,它们是由seaborn生成的RGB代码列表,用于seaborn和matplotlib。例如:

import seaborn as sns

#: List of RGB tuples for 10 color palette
PRIMARY_10 = sns.color_palette(['#000000', '#000000', '#000000', '#000000', '#000000', '#000000', '#000000', '#000000', '#000000', '#000000'])

#: List of RGB tuples for 5 color palette
PRIMARY_5 = sns.color_palette(['#000000', '#000000', '#000000', '#000000', '#000000'])

以下作品,但并不完全符合我的要求:

color_palettes
==============
.. automodule:: cy.basics.color_palettes
   :members:

它会生成一个看起来像的页面:

color_palettes

cy.basics.color_palettes.PRIMARY_10 = [(0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0)]
List of RGB tuples for 10 >color palette 

cy.basics.color_palettes.PRIMARY_5 = [(0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0)] 
List of RGB tuples for 5 color palette

我希望文档省略赋值的右侧,即长元组列表。我还想在每个下面加一个颜色托盘的图像。我想我可以这样做:

color_palettes
==============
.. automodule:: cy.basics.color_palettes
    .. autodata:: PRIMARY_10 
        :annotation:
        .. image:: primary-10.png
    .. autodata:: PRIMARY_5
        :annotation:
        .. image:: primary-5.png

结果很接近,但它省略了变量的描述并使用了seaborn color_palatte的描述。见下文:

color_palettes

cy.basics.color_palettes.PRIMARY_10
Set the color palette in a with statement, otherwise be a list.
../_images/primary-10.png

cy.basics.color_palettes.PRIMARY_5
Set the color palette in a with statement, otherwise be a list.
../_images/primary-5.png

这是我使用#:还是docstring的注释格式的结果。在Sphinx中这样做的正确方法是什么。

下面我想要的例子:

color_palettes

cy.basics.color_palettes.PRIMARY_10
List of RGB tuples for 10 color palette
../_images/primary-10.png

cy.basics.color_palettes.PRIMARY_5
List of RGB tuples for 5 color palette
../_images/primary-5.png

0 个答案:

没有答案