为了账号安全,请及时绑定邮箱和手机立即绑定

L2 = sorted(L1,key = lambda x:x.name)这里的key是什么用?

L2 = sorted(L1, lambda x:x.name)这样写不行么,直接取出name就return了,还要赋值给key么?

正在回答

2 回答

不行的,key = lambda x,x['name']这是一个固定用法。假如L1是一个由元组构成的列表,这时候就麻烦了,我们需要用到参数key,也就是关键词,看下面这句命令,lambda是一个隐函数,是固定写法,不要写成别的单词;x表示列表中的一个元素,在这里,表示一个元组,x只是临时起的一个名字,你可以使用任意的名字。

0 回复 有任何疑惑可以回复我~

>>> help(sorted)
Help on built-in function sorted in module __builtin__:

sorted(...)
    sorted(iterable, cmp=None, key=None, reverse=False) --> new sorted list

1 回复 有任何疑惑可以回复我~
#1

Meredith_Grey 提问者

不太明白,我是不是不适合当程序员23333333
2018-01-11 回复 有任何疑惑可以回复我~
#2

qq_夏目_17

key就是列表里面的每个值,对应字典就是每个键。 在python3中,sorted的使用方法如上图。
2018-01-11 回复 有任何疑惑可以回复我~
#3

沐之风 回复 qq_夏目_17

可以不写"key="吗?为什么我要是没有写上去就报错呢?
2018-03-15 回复 有任何疑惑可以回复我~
#4

慕仔5308971 回复 Meredith_Grey 提问者

不要怀疑自己。
2018-07-22 回复 有任何疑惑可以回复我~
查看1条回复

举报

0/150
提交
取消
python进阶
  • 参与学习       255624    人
  • 解答问题       2949    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

L2 = sorted(L1,key = lambda x:x.name)这里的key是什么用?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信