使用强制数据类型和尺寸的Docstring格式来输入NumPy数组

21
为了举例说明,假设我有一个函数,它以两个numpy数组作为输入参数。第一个数组必须是二维的,且只包含浮点数。第二个数组必须是一维的,且只包含布尔值。
到目前为止,我还没有找到一种现有的约定来指定函数输入数组的数据类型和维度。我想到的一种可能的格式(以numpy文档字符串约定为基础)是这样的:
def example_function(arr1, arr2):
    """This is an example function.

    Parameters
    ----------
    arr1 : ndarray(dtype=float, ndim=2)
        Array containing some kind of data.
    arr2 : ndarray(dtype=bool, ndim=1)
        Array containing some kind of mask.

   """

这是否可以被视为“正确”的文档字符串格式?(即它是否不违反现有文档字符串约定的任何规则?)


4
我喜欢你的建议胜过被接受的答案,因为它更加简明扼要,信息也始终位于相同的位置。 - levesque
1个回答

16

维度和项目类型是关于您的数组的额外信息,这些信息是函数参数。因此,根据文档,您需要采用以下样式:

"""
x : type
    Description of parameter `x`.
"""

在这种情况下应该是这样的:

"""
Parameters
----------
arr1 : ndarray
    2D array containing data with `float` type.
arr2 : ndarray
    1D mask array(containing data with boolean type).
"""

请注意,如果您想进行更多的澄清,最好在函数描述部分中描述数据类型和尺寸。


你的回答中第6行应该修改为 arr2: ndarray 吗? - Xukrao

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接