我一直在阅读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,它表示它支持属性,但不专门支持类或实例属性。
我尝试了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摘要。
我希望此信息对您有所帮助。