上一篇我们讲了lambda演算的概念,这一篇正式延伸到python中的lambda函数。
1. python中的lambda函数的写法
首先,它的写法就跟数学中的写法不同,在python中lambda函数一般写作:
lambda parameters : expression
那么实际该怎么运用呢?举个简单的例子,我们希望对一组客户数据按年龄进行排序,而这组数据目前是以元组的形式储存在列表里:
users = [(‘user1’, 20),
(’user2‘, 36),
(‘user3’, 45)]
接下来想用sort函数对这组用户数据按年龄进行降序排序的话,python是没有办法直接识别到年龄这一项的值的,sort函数需要一个关键词key,来找到对应的值进行排序。
直觉上,我们会提取出年龄这一项,再进行排序,那么就需要定义一个取值的函数:
但其实这个排序的函数我们可能只用一次,总要定义来定义去,效率低,代码也很冗杂。
lambda函数的好处这时候就体现出来了,我们不用费劲心思去命名一个新函数,也不用专门写几行的代码来运行这个函数,我们可以直接在sort函数的key参数(