Python中的匿名函数

匿名函数:顾名思义就是没有函数名的函数。一般用来解决功能简单需求的一句话函数。

把普通函数转换为匿名函数:

def calc(n):
    return n*n
print(calc(5))
#转换
calc = lambda n:n*n
print(calc(5))

匿名函数的格式

综上:函数名 = lambda 参数:返回值

参数可以有多个用逗号隔开

匿名函数不管多复杂,只能写一行,且执行完结果就是返回值

匿名函数的用法

匿名函数最大的用法就是与内置函数结合使用。

#与min()/max()结合使用
print(max([{'name1':10},{'name2':20}],key=lambda dic:[k] for k in dic))

#与filter()
l = ['alex',[1,2,3],{},()]
print(filter(lambda x:type(x) is not dict,l))  #找出L中非字典数据类型

#与map()
print(list(map(lambda n:n**2,range(10)))) #把range(10)中的每个值的平方组成列表

#与sorted
l = [{'name':'电脑','price':1999},{'name':'电脑','price':2000}]
print(sorted(l,key=lambda dic:dic['price]))  #按价格排序

 

posted @ 2018-11-26 23:25  一只程序猿呀  阅读(399)  评论(0编辑  收藏  举报