filter,reduce函数

filter函数的第一个输入是一个返回值为boolean的函数名,第二个是一个可迭代类型,返回值和map函数一样,是个迭代器

telma = ["Chris", "John","Jack","Tom"]
res = filter(lambda x:x.startswith("J"),telma)
print(list(res))

  

['John', 'Jack']

 

[{'name': 'Jerry', 'age': 20}, {'name': 'Tom', 'age': 19}]

 

telma = [{"name":"Jack","age":18},{"name":"John","age":18},{"name":"Jerry","age":20},{"name":"Tom","age":19}]

res = filter(lambda x:x["age"]>18,telma)
print(list(res))

  

 

map是遍历一个序列按照一个function全部执行一遍,返回同长度的序列,元素位置也一样,filter是遍历一个序列按照条件取序列的子集,reduce函数是把一个序列最终合并操作算出一个值来

from functools import reduce
telma =[1,3,5,7,9]
res=reduce(lambda x,y:x+y,telma,10) #10为初始值,可以没用
print(res)
res1=reduce(lambda x,y:x+y,telma)
print(res1)

  

35
25

 

转载于:https://www.cnblogs.com/telma/p/10505346.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值