繁体   English   中英

这个lambda函数如何在Python 3中工作?

[英]How does this lambda function work in python 3?

pairs = [(1, 'one'), (2, 'two'), (3, 'three'), (4, 'four')]
pairs.sort(key=lambda pair: pair[1])

print(pairs)

答:

[(4, 'four'), (1, 'one'), (3, 'three'), (2, 'two')]

pair参数在这里如何工作?

当您要对集合进行排序时, key参数是一个函数,用于从每个元素中提取要进行排序的值。 该函数接受参数,产生一个值,并使用该值对列表进行排序

在您的情况下, lambda pair: pair[1]只是一个匿名函数,它接受您的(x, y)对值并且仅返回y 由于在您的情况下这些值是字符串,因此您的列表将按每个元组的第二个值的字母顺序排序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM