㈠ python里students.sort(key=lambda x: x['name']),两个x的意思是什么
lambda x:x ['name']是一个匿名函数(俗称lambda表达式),冒号前面的x是函数的参数,sort函数会把列表的每个字典传给x,而x['name']是函数的函数体,意思是返回字典x的name键的值。
这个代码的意思就是按列表中每个字典的name键的升序来对列表排序。
其实,students.sort(key=lambda x:x['name'])就是相当于这样:
#先定义一个函数
def k(x):return x['name']
#key按关键字传参排序
students.sort(key=k)
㈡ Python 匿名函数lambda是什么
在Python语言中除了def语句用来定义函数之外,还可以使用匿名函数lambda,它是Python一种生成函数对象的表达式形式。匿名函数通常是创建了可以被调用的函数,它返回了函数,而并没有将这个函数命名。lambda有时被叫做匿名函数也就是这个原因,需要一个函数,又不想动脑筋去想名字,这就是匿名函数。
#-*-coding:utf-8-*-
#__author__="www.iplaypy.com"
#普通python函数
deffunc(a,b,c):
returna+b+c
printfunc(1,2,3)
#返回值为6
#lambda匿名函数
f=lambdaa,b,c:a+b+c
printf(1,2,3)
#返回结果为6
#注意观察上面的Python示例代码,f=lambdaa,b,c:a+b+c中的关键字lambda表示匿名函数,
#冒号:之前的a,b,c表示它们是这个函数的参数。
#匿名函数不需要return来返回值,表达式本身结果就是返回值。