码迷,mamicode.com
首页 > 其他好文 > 详细

匿名函数

时间:2020-02-07 12:25:53      阅读:62      评论:0      收藏:0      [点我收藏+]

标签:nbsp   ret   逗号   hid   map   zip   filter   lambda   open   

# 匿名函数引入

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))
View Code
技术图片匿名实现 

匿名函数

标签:nbsp   ret   逗号   hid   map   zip   filter   lambda   open   

原文地址:https://www.cnblogs.com/pythoncui/p/12272357.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!