Python函数之匿名函数

Posted 择一事,终一生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python函数之匿名函数相关的知识,希望对你有一定的参考价值。

一:概述

匿名函数主要用来处理比较简单的逻辑,用一行显示,并将运算结果作为返回值返回

 

二:书写规则

函数名 = lambda 参数:返回值

参数可以有多个,多个参数使用逗号分隔

 

三 :例子

 

将func函数书写成匿名函数

def func(x):
    return x**2
ret = func(2)
print(ret)

func_lambda = lambda x:x**2
ret = func_lambda(2)
print(ret)

 

匿名函数主要和其他函数配合使用

 

和max函数配合使用

# 根据字典的值返回最大的键

# 原始做法

dic={k1:10,k2:100,k3:30}
def func(k):
    return dic[k]
ret = max(dic,key=func)
print(ret)

# 使用lambda
dic={k1:10,k2:100,k3:30}
ret = max(dic,key=lambda k:dic[k])
print(ret)

 

和map函数配合使用

# 将列表元素求平方
# 传统做法
l = [1,2,3,4,5]
def func(x):
    return x**2
ret = map(func,l)
for i in ret:
    print(i)

# lambda
l = [1,2,3,4,5]
ret = map(lambda x:x**2,l)
for i in ret:
    print(i)

 

和map函数混合使用

# 现有两个元组((‘a‘),(‘b‘)),((‘c‘),(‘d‘)),请使用python中匿名函数生成列表[{‘a‘:‘c‘},{‘b‘:‘d‘}]

ret = zip(((a),(b)),((c),(d)))
def func(x):
    return {x[0]:x[1]}
res =list(map(func,ret))
print(res)


res = list(map(lambda x:{x[0]:x[1]},zip(((a),(b)),((c),(d)))))
print(res)

 

以上是关于Python函数之匿名函数的主要内容,如果未能解决你的问题,请参考以下文章

python之内置函数,匿名函数

python函数之匿名函数

python之匿名函数

python 之匿名函数

Python函数之匿名函数

python函数式编程之匿名函数装饰器偏函数