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

时间:2017-10-18 16:19:32

标签: python python-3.x

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参数如何在这里工作?

1 个答案:

答案 0 :(得分:2)

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

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