关于匿名函数lambda的列表排序里面的key和参数不是很明白?这个key跟字典的key一样吗?为什么不能用其它函数名f或f()接收?
35
收起
正在回答
2回答
同学,你好
1.在sort()函数中的key参数就是用来指定是根据什么排序的,当key=lambda x: x["age"]即为根据字典中的"age"的值来排序
2.key不可以换成其他函数名,key是sort()中的参数
3.x是列表中的每一个元素
好帮手慕小轩
2020-11-02 19:09:25
同学,你好,
1.sort()函数里面的key参数,只能key=lambda固定模式
d = {'a': 6, 'b': 7, 'd': 5, 's': 10} a = d.items() s = list(a) s.sort(key=lambda x: x[1]) print(s)
2.结合def方法一起使用,key=方法名
li = {'a': 6, 'b': 7, 'd': 5, 's': 10} a = li.items() s = list(a) s.sort() def fun(s): return s[1] s.sort(key=fun) print(s)
3.x是匿名函数的参数即列表中的每一个元素,x[1]是函数的返回值,可以换成任意的变量名
d = {'a': 6, 'b': 7, 'd': 5, 's': 10} a = d.items() s = list(a) s.sort(key=lambda x: x[1]) s.sort(key=lambda y: y[1]) s.sort(key=lambda z: z[1]) s.sort(key=lambda c: c[1]) print(s)
Python全栈工程师2020
- 参与学习 人
- 提交作业 5229 份
- 解答问题 2433 个
Facebook曾声称“只招全栈工程师”!全栈用人需求猛增,市面人才紧缺。 0基础进击Python全栈开发,诱人薪资在前方!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星