2016-09-29 53 views
1

Python docs表示“用于Python文档的标记是reStructuredText”。我的问题是:块应该如何写入来显示多个返回值?如何在Python 2中使用reStructuredText记录多个返回值?

def func_returning_one_value(): 
    """Return just one value. 

    :returns: some value 
    :rtype: str 
    """ 

def func_returning_three_values(): 
    """Return three values. 

    How do I note in reStructuredText that three values are returned? 
    """ 

我发现用新结构化的Python文档一个tutorial,但它并没有用于记录多个返回值的例子。 Sphinx docs on domains谈到returnsrtype,但不谈论多个返回值。

+0

似乎任何东西都与docstrings一样,只要它在整个项目中清晰简洁并一致。写一些适合你的目的的东西。 [PEP 257](https://www.python.org/dev/peps/pep-0257/)有一些广泛的约定。查看计算机上的python py文件,看看开发人员如何做到这一点。 – wwii

+1

像[os.walk()](https://github.com/python/cpython/blob/a237032d7732bd9142e3802b77767d342bb30870/Lib/os.py#L277)它返回多个东西。 – wwii

回答

3

正如wwi在评论中提到的那样,使用的详细格式没有严格定义。

对于我自己,我通常使用上面使用的Field List表示法。它支持换行符,所以只要打破你觉得有必要的地方

def my_func(param1, param2): 
    """ 
    This is a sample function docstring 

    :param param1: this is a first param 
    :param param2: this is a second param 
    :returns: tuple (result1, result2) 
     WHERE 
     str result1 is .... 
     str result2 is ....   
    """ 
+0

不适用于我。你需要安装一些特殊的东西,还是告诉Sphinx它必须使用字段列表? – PatriceG