语法: lambda [arg1 [,arg2,.....argn]]:expression 说明: lambda 只是一个表达式,函数体比 def 简单很多。 lambda 主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。 lambda 函数拥有自己的命名空间,且不能访问自己参数列表之外或全局命名空间里的参数。 lambda 可以有多个参数,参数之间用逗号隔开。 lambda 函数只能写一行。 例题: func = lambda x:(x[0],x[2]) print(func('hello')) # ('h', 'l') func = lambda x,y: x if x > y else y print(func(3,100)) # 100 dic = {'k1':20,'k2':100,'k3':40} print(max(dic)) # k3 print(max(dic,key=lambda k:dic[k])) # k2 ret = map(lambda x: x ** 2, [1, 2, 3, 4, 5]) print(list(ret)) # [1, 4, 9, 16, 25] # 提供了两个列表,对相同位置的列表数据进行相加 ret = map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4