首页 热点资讯 义务教育 高等教育 出国留学 考研考公

python 看不懂代码 求解释

发布网友 发布时间:2022-04-24 18:24

我来回答

2个回答

热心网友 时间:2023-10-31 21:29

key 接受一个callable的对象,说白也就是一个函数,sort方法会把list的每一个元素传给key指向的函数,根据该函数返回的值对list的每个元素行进行排序,此处list的元素为list的每一行。
lambda x: x[sortI - 1] 是一个匿名函数,相当于 def 某某函数(x): return x[sortI - 1],此处装*节约空间用lambda定义这个函数。也就是说你完全可以单独定义一个函数然后 (key=这个你定义的函数名)(函数名不加括号)。注意你定义的这个函数必须接受一个参数并且返回一个参数。

热心网友 时间:2023-10-31 21:30

这个写法好像有点问题;
正常这种写法
li=[1, 2, 3, 4, 5, 6, 7, 8, 9]
li.sort(key=lambda x: abs(5-x))
print(li)
将列表li按照元素与5距离从小到大进行排序,结果为:
[5, 4, 6, 3, 7, 2, 8, 1, 9]

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com