python匿名函数lambda的注意点

python匿名函数lambda的注意点
python匿名函数lambda的注意点

1、lambda是表达式,不是语句。

lambda可以出现在python语法不允许def的地方,例如,lambda可以出现在列表中,而def不能出现。

>>> [(lambda x: x**2)(x) for x in range(10)]
 
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

2、lambda主体只是一个简单的单一表达方式,并非代码块。

lambda主体就像def函数中的return句子中的代码一样,简单地将结果写成流畅的表达式,而不是明确的返回。

# 用def创建函数
 
>>> def func(x, y, z): return x + y + z
 
...
 
>>> func(2, 3, 4)
 
9
 
# 用lambda创建函数
 
>>> f = lambda x, y, z: x + y +z
 
>>> f(2, 3, 4)
 
9

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注