Python教程系列 第一季

Python基础15

2020-10-26  本文已影响0人  粽子和小恺

8.4 lambda表达式

Lambda表达式是Python中一类特殊的定义函数的形式,使用它可以定义一个匿名函数。与其它语言不同,Python的Lambda表达式的函数体只能有单独的一条语句,也就是返回值表达式语句。其语法如下:

lambda 原函数的参数 : 函数返回值表达式语句
例42:

#定义一种变换,使传进去的参数+8,然后输出。
#def形式
 def b(x):
    x = x + 1
    print(x)

#lambda表达式
b = lambda  x:x + 8

其中,= 代表将lambda表达式的内容赋值给b,x代表调用时需要传入一个x参数,:后面的语句代表要对x执行的内容。
程序执行如下(lambda表达式版):



怎么?觉得不够方便,还是觉得太简单了呢?
课后作业(升级挑战):

li=[{"age":20,"name":"def"},{"age":25,"name":"abc"},{"age":10,"name":"ghi"}]
li=sorted(li, key=lambda x:x["age"])
print(li)

把它写成def的形式。
答案在我的公众号里(科技与文学)。
啊不,开玩笑的,答案如下:

def comp(x):
    return x["age"]
li=[{"age":20,"name":"def"},{"age":25,"name":"abc"},{"age":10,"name":"ghi"}]
li=sorted(li, key=comp)
print(li)
上一篇下一篇

猜你喜欢

热点阅读