什么是lambda?你怎么能解释这种排序

时间:2019-01-03 15:13:14

标签: python lambda

请保持冷静,我仍在学习Python。我有一个例子

  

对= [(1,'一个'),(2,'两个'),(3,'三个'),(4,'四个')]

     

pairs.sort(key = lambda对:pair [1])

结果是

  

[(4,'四个'),(1,'一个'),(3,'三个'),(2,'两个')]

您能帮忙解释一下为什么会这样吗?

1 个答案:

答案 0 :(得分:0)

lambda只是声明一个简单函数的一种简短方法。可以很容易地编写该代码:

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

def key_func(pair):
    return pair[1]

pairs.sort(key=key_func)

在这种情况下,lambda函数告诉sort应该如何将数组中的值(在这种情况下,是一个没有明显排序顺序的元组)转换为它知道如何排序(字符串)。