如何用sphinx记录可链接的常量

时间:2018-06-13 07:10:30

标签: python constants python-sphinx

如何正确记录常量,比如foo = 4 在Python(3)中以这种方式使用Sphinx编写代码,我可以使用以下内容访问它们:attr:`foo`?

我目前的解决方案是创建一个类并将常量移动到属性中:

class Constants:
    @property
    def foo(self):
        """Cool Documentation."""
        return 4

然后添加classes.rst文件:

..autoclass:: Constants
   :members:

然而,这不应该是正确的方法, 因为它迫使我在我的代码中携带Constants的实例。

如果重要: 我使用Numpy风格

1 个答案:

答案 0 :(得分:1)

我找到了解决问题的合理方法。我添加了一个文件constants.py

    #: :obj:`int` : 
    #: Cool documentation about foo
    foo = 4

classes.rst我添加了行

    .. automodule:: MODULE_WHERE_THE_FILE_IS_IN.constants
        :members:

这会创建foo常量的文档,我可以创建foo的链接:

    :const:`MODULE_WHERE_THE_FILE_IS_IN.constants.foo`

    :const:`~MODULE_WHERE_THE_FILE_IS_IN.constants.foo`