sorted(key = lambda:…)后面的语法

发布于 2021-01-29 19:30:07

我不太理解该sorted()参数背后的语法:

key=lambda variable: variable[0]

是不是lambda随心所欲?为什么variable在看起来像是两次dict

关注者
0
被浏览
53
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    key是一个函数,在比较它们之前将调用该函数来转换它们。传递给的参数key必须是可调用的。

    使用lambda创建一个匿名函数(可调用)。在sorted可调用的情况下仅采用一个参数。Pythonlambda很简单。它只能做并真正返回一件事。

    的语法lambda是单词,lambda后跟参数名称列表,然后是单个代码块。参数列表和代码块用冒号表示。这类似于在python其他构建体,以及诸如whileforif等。它们都是通常具有代码块的语句。Lambda只是带有代码块的语句的另一个实例。

    我们可以将lambda与def的使用进行比较,以创建一个函数。

    adder_lambda = lambda parameter1,parameter2: parameter1+parameter2
    def adder_regular(parameter1, parameter2): return parameter1+parameter2
    

    lambda只是为我们提供了一种无需分配名称的方法。这非常适合用作函数的参数。

    variable 在这里使用两次是因为冒号的左侧是参数的名称,而右侧则在代码块中用于计算某些内容。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看