如何在Sphinx中记录Python类的私有属性

ss2ws0br  于 2023-05-21  发布在  Python
关注(0)|答案(1)|浏览(103)

为了代码的可读性,我想将Python类的私有属性的描述添加到该类的Sphinx文档字符串中,但我希望自动生成的文档不显示这些属性。我能这么做吗
例如,如果我有一个像这样的class & doc字符串:

class Foo:
'''
My class description

:ivar attr1: Attribute 1 description
:ivar attr2: Attribute 2 description
'''

我想在属性列表中添加一个私有属性__attr3,该怎么做?
我看到这里有一个“: metaprivate:”字段,但这似乎是针对私有方法的。是否有方法将此字段用于属性?

8fq7wneg

8fq7wneg1#

是的,你可以通过使用: meta来实现这一点:Sphinx中的指令。虽然: meta:指令主要用于记录私有方法,您也可以将其调整为记录私有属性。
以下是如何使用: meta:在Sphinx文档字符串中记录私有属性的指令:

class Foo:
    My class description

    :ivar attr1: Attribute 1 description
    :ivar attr2: Attribute 2 description
    :meta private attr3: Attribute 3 description (private)

    def __init__(self):
        self.attr1 = None
        self.attr2 = None
        self.__attr3 = None

相关问题