我应该如何使用Numpy的样式记录类和对象的属性? [关闭]

问题描述 投票:13回答:1

我一直在阅读Numpy's documentation standards,似乎没有提到对象属性-只是类属性。

例如,我将如何记录以下内容?

class ClassA(object):
    """Short description of ClassA

    Long description of ClassA

    Parameters
    ----------
    param : param_type, optional
        param_description

    Attributes (class)
    ----------
    class_attr : class_attr_type
        class_attr_description

    Attributes (object)
    ----------
    obj_attr : obj_attr_type
        obj_attr_description

    """

    class_attr = 'something'

    def __init__(self, arg='something else'):
        self.obj_attr = arg

编辑:只是要注意我要切换到Napoleon,它表示它支持属性,但不专门支持类或实例属性。

python numpy scipy python-sphinx sphinx-napoleon
1个回答
7
投票

我尝试了numpy提供的How to Document文件中提到的内容。它提到类属性的文档应按以下方式处理。

位于“参数”部分下方的“属性”部分可用于描述类变量:

Attributes
----------
x : float
    The X coordinate.
y : float
    The Y coordinate.

继续提到实例属性应该具有自己的文档,并且仅按名称列出。

这很有意义,但我在numpy源代码中找不到任何示例。我发现的最接近的内容在ABCPolyBase class中有不同之处。

Attributes
----------
coef : (N,) ndarray 
...
Class Attributes
----------------
maxpower : int

[我认为,_polybase.py类中使用的文档清晰易懂,但我认为Class Attributes用法不适用于Sphinx autodoc摘要。

我希望此信息对您有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.