如何在sphinx doc中显示实例属性?

Mel*_*oun 36 python documentation python-sphinx

有没有办法如何在sphinx文档中自动显示变量var1var2及其init-values?

class MyClass:
    """    
    Description for class
    """

    def __init__(self, par1, par2):
       self.var1 = par1 * 2
       self.var2 = par2 * 2

    def method(self):
       pass
Run Code Online (Sandbox Code Playgroud)

mzj*_*zjn 48

您的变量是实例变量,而不是类变量.

如果不将文档字符串(或#:"doc注释")附加到变量,则不会记录它们.你可以这样做:

class MyClass(object):
    """    
    Description for class 

    """

    def __init__(self, par1, par2):
        self.var1 = par1 #: initial value: par1
        self.var2 = par2 #: initial value: par2

    def method(self):
        pass
Run Code Online (Sandbox Code Playgroud)

但我更喜欢使用信息字段包含变量文档:

class MyClass(object):
    """    
    Description for class

    :ivar var1: initial value: par1
    :ivar var2: initial value: par2
    """

    def __init__(self, par1, par2):
        self.var1 = par1 
        self.var2 = par2 

    def method(self):
        pass
Run Code Online (Sandbox Code Playgroud)

也可以看看:

  • 不错的答案!不过你不需要使用`:ivar foo:`,只需`:var foo` 就可以了。 (4认同)
  • @RayLuo 但它们不是同义词 - `ivar` = 实例变量,`cvar` = 类变量,`var` = 自己解决。虽然 Sphinx 并不关心,但它会通知人类读者。 (2认同)