Sphinx拿破仑可以记录返回多个参数的函数吗?

本教程将介绍Sphinx拿破仑可以记录返回多个参数的函数吗?的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

Sphinx拿破仑可以记录返回多个参数的函数吗? 教程 第1张

问题描述

我正在尝试使用Google代码样式来记录一个函数,然后我使用带有拿破仑扩展的Shinx来为其创建文档。该函数的不同寻常之处在于它返回两个参数。我不认为拿破仑会处理这件事。如果是这样的话,谁能告诉我他们是怎么处理的?

def foo(a):
'''one line summary

longer explanation

Args:
  a (int): parameter description

Returns:
  servers (list): list of servers to use
  msg (str): logging message string 
'''
pass

可能我收到一条消息,返回多个参数不是一种很好的编码风格,但您能做到吗?生成的html将这两行视为一个参数的描述的一部分。如果我在服务器和消息行之间加一个换行符,这会有所帮助,但它仍然记录一个参数。

推荐答案

只返回单个对象。如果您致电

serv,msg = foo(myinput)

然后显式展开Expression_list元组,该元组是在函数返回以下代码时生成的

return servers,msg

您的文档字符串应该是这样的(使用拿破仑谷歌风格)

"""
one line summary

longer explanation

Args:
 a (int): parameter description

Returns:
 (tuple): tuple containing:

  servers(list) servers to use
  msg (str): logging message string 
"""

或拿破仑NumPy风格:

"""
one line summary

longer explanation

Parameters
----------
a : int
 parameter description

Returns
-------
servers : list
 servers to use
msg : str
 logging message string 
"""

查看return和expression_list的python文档

好了关于Sphinx拿破仑可以记录返回多个参数的函数吗?的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。