匿名函数
Posted pythoncui
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了匿名函数相关的知识,希望对你有一定的参考价值。
# 匿名函数引入
def func(n):
return n*n
print(func(10))
# 将上述代码换成匿名函数
func = lambda n: n*n
print(func(10))
# 匿名函数
函数名 = lambda 参数1, 参数2... : 返回值
注:参数可以有多个,用逗号隔开
练习1: 编写x+y的匿名函数
add = lambda x, y : x+y
print(add(5, 6))
# map匿名
res = map(lambda x: x**2, [1, 5, 7])
for i in res:
print(i) # 输出:1 25 49
# filter匿名
res = filter(lambda x: x>10, [5, 8, 9, 11, 12 ])
for i in res:
print(i) # 输出:11 12
练习题2:现有两元组 ( ( ‘a‘ ) ,( ‘b‘ ) ), ( ( ‘c‘ ), ( ‘d‘ ) ), 请利用python中的匿名函数生成列表[ { ‘a‘ : ‘c‘}, { ‘b‘ : ‘d‘ } ]
1 ret = zip ( ( ‘a‘ ) ,( ‘b‘ ) ), ( ( ‘c‘ ), ( ‘d‘ ) ) # zip拉链法 将生成 ( ( ‘a‘ ) ,( ‘c‘ ) ), ( ( ‘b‘ ), ( ‘d‘ ) )
2
3 def func(tup):
4
5 return { tup[0]: tup[1] }
6
7 res = map(func, ret)
8
9 print(list(res))
匿名实现
以上是关于匿名函数的主要内容,如果未能解决你的问题,请参考以下文章