python 匿名函数lambda()

什么是lambda()函数

    当我们想要使用一个简单定义的,或者只需要调用一两次的函数时,取名就是一个比较麻烦的事

使用lambda()匿名函数可以省去这一步骤

#x是传入的参数
a = lambda x : x*10 print(a(1))#10

上述代码说明,lambda定义了一个匿名函数,将x作为传入参数,x*10作为函数体,用函数可以定义为:

def fun(x):
    return x*10
print(fun(1))#10

lambda()可以与filter(),map()等函数一起使用:

#将range(10)以内的偶数过滤掉
a = list(filter(lambda x : x % 2,range(10)))#奇数余2的值为1,bool值为True,filter函数返回此元素
print(a)#[1, 3, 5, 7, 9]

#将range(10)以内的数*2保存到新列表
b = list(map(lambda x:x*2,range(10)))
print(b)#[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

 

lambda()只能使代码简洁,不能提高效率

可能令维护变得困难,因此不要用lambda来定义复杂的函数。

 

posted @ 2019-10-12 11:37  陈畅  阅读(1246)  评论(0编辑  收藏  举报