func_1=lambda x:x+1 print(func_1(3)) #4 print(func_1(7)) #8 #lambda作为一个表达式,定义了一个匿名函数,上例的代码x为入口参数,x+1为函数体,用函数来表示为: def func_1(x): return (x+1)
也可以这样使用:
lambda x:x+1(3) # 4
from functools import reduce foo = [1, 2, 3, 4, 5]
## 过滤数据,保留能被2整除的数值 print (list(filter(lambda x: x % 2 == 0, foo))) #[2, 4]
## 输入参数都乘以3 print (list(map(lambda x: x * 3 , foo))) #[3, 6, 9, 12, 15]
## 输入参数求累加和 print (reduce(lambda x, y: x + y, foo)) #15
其实Python的for..in..if语法已经很强大,并且在易读上胜过了lambda。
foo = [1, 2, 3, 4, 5] ## 过滤数据,保留能被2整除的数值 print( [x for x in foo if x % 2 == 0] ) ## 输入参数都乘以3 print( [x*3 for x in foo] )
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。