lambda函数

简单来说,lambda函数用来定义简单的,能够在一行内表示的函数。

语法格式如下:

lambda arg1,arg2,... : experssion

案例:

>>> f = lambda x,y: x+y
# 等价于
>>> def f(x,y):
...     return x + y

lambda函数一般不会直接定义,主要用于不会被反复调用的匿名函数的定义,节省内存,通常是作为参数传递给其他函数作为参数使用。

案例:

复杂数据的排序

>>> ls = [['张三',80],['李四',76],['王五',90]]  # 对这个列表安装成绩从小到大排序

如果直接调用ls.sort(),是按照内层元素的第一个元素,也即是姓名排序,列表的顺序不变。

>>> ls.sort()
>>> ls
[['张三', 80], ['李四', 76], ['王五', 90]]

列表的.sort()方法接受一个key参数,这个参数可以是一个函数,它的参数是列表中的元素,它的返回值用来排序。

>>> ls.sort(key=lambda x: x[1])
>>> ls
[['李四', 76], ['张三', 80], ['王五', 90]]
posted @ 2022-08-23 14:07  python心蓝  阅读(167)  评论(0编辑  收藏  举报