匿名函数

正常函数:

#比较大小
def func(x,y):
    return x if x>y else y
print(func(1,2)) #2

匿名函数:

func = lambda x,y:x if x>y else y
print(func(1,2))#2

关键字:lambde

格式:只能一条语句结束

      lambde 形参:需要返回的值的条件

和内置函数配合使用的匿名函数:

  max,min,filter,map,sorted。。。。其它未习得

  这些内置函数的共性是都可以调用函数,可以是内置函数,可以是自定义函数

max:

l = [1,2,3,4,5,6,7,-10]
big = max(l,key= abs)
print(big) #-10

min:

l = [1,2,3,4,5,6,7,-10]
mi = min(l,key= abs)
print(mi)#1

filter:

l = [1,2,3,-1,-5,0,51]
filtrate = filter(lambda x : x > 0,l)
for i in filtrate:
    print(i) #1 2 3 51

map:

l = [1,2,3,-1,-5,0,51]
maps = map(lambda x : x + 1,l)
print(list(maps)) #[2, 3, 4, 0, -4, 1, 52]

sorted:

l = [1,2,3,-1,-5,0,51]
info_sort = sorted(l,key = abs)
for i in info_sort:
    print(i)#0 1 -1 2 3 -5 51

结论:

匿名函数可以单独的给一个函数名,也可以和其它内置函数同时使用,实现真正匿名

原文地址:https://www.cnblogs.com/aizhinong/p/11402164.html