如何以Numpydoc格式记录多个返回值?

时间:2019-05-09 17:46:55

标签: python pycharm tuples type-hinting numpydoc

我正在尝试使用numpy docstring格式记录元组返回值,但无法使其与pycharm类型提示一起使用。

我尝试了多种方法,甚至找到了一种适用于该类型的方法,但不允许我为它的每个元素添加描述。

文档功能示例:

def function():
    foo = 42
    bar = {
        example : 1337,
        dictionary : 46,
    }
    return foo, bar

现在,我可以记录的一种方法是:

def function():
    """
    This is the function summary.

    Returns
    -------
    foobar : tuple[int,[dict[string, int]]
        This is a description of the return type
    """
    foo = 42
    bar = {
        'example' : 1337,
        'dictionary' : 46,
    }
    return foo, bar

这将为我提供描述和正确的返回类型提示,但不会为每个元素提供单独的描述,

以下是我要达到的目标的无效示例:

def function():
    """
    This is the function summary.

    Returns
    -------
    foo : int
        This is an int
    bar : [dict[string, int]
        This is a dictionary
    """
    foo = 42
    bar = {
        'example' : 1337,
        'dictionary' : 46,
    }
    return foo, bar

1 个答案:

答案 0 :(得分:0)

如果将function的返回值注释为tuple[int, dict[string, int]],则其文档可以正确显示,但是推断function()[1]["key"]的类型存在问题。随时在公共PyCharm跟踪器https://youtrack.jetbrains.com/issues/PY中提交问题。