繁体   English   中英

python为lambda函数编写docstrings的最佳方法是什么?

[英]What is the best way in python to write docstrings for lambda functions?

我通常使用带有“”的多行文档字符串来评论我的函数,如下所述: https//www.python.org/dev/peps/pep-0257/

def func1(x):
  """
  This function does ...
  """
  ...

但是评论lambda函数的最佳方法是什么? 我在犹豫之间犹豫:

# This function does ...
func2 = lambda x: ...

要么 :

func2 = lambda x: ...
""" This function does ... """

要不然 ?

tbh,甚至将lambda赋给变量似乎对我来说是单声道的。 如果需要名称,请将其定义为常规函数。 lambda函数和常规函数之间的区别在于后者具有__name__属性和显式返回语句。

如果必须将文档字符串添加到lambda,请执行以下操作:

f = lambda x: x + 1
f.__doc__ = """adds 1 to input-arg"""

help(f) 
# outputs the following:
help(f)
Help on function <lambda> in module __main__:

<lambda> lambda x
    adds 1 to arg

这样,文档实际上可以作为函数docstring用于解释器。

直接从pep-8引用

始终使用def语句而不是将lambda表达式直接绑定到标识符的赋值语句。

是:

 def f(x): return 2*x 

没有:

 f = lambda x: 2*x 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM