Python(Reduce函数)

#reduce函数,在python2中可以直接使用,python3中需要导入包
#例子
def reduce_test(func,array,init=None):
    if init is None:
        res  = array.pop(0)
    else:
        res = init
    for i in array:
        res = func(res,i)
    return res
def func(x,y):
    return x*y
num = [1,2,3,100]
#指定基值
print(reduce_test(func,num,10))
print(reduce_test(lambda x,y:x*y,num))
使用reduce函数
from functools import reduce
num_l = [1,2,3,4,5,6]
print(reduce(lambda x,y:x+y,num_l))
print(reduce(lambda x,y:x+y,num_l,1000))

小结:
    map():遍历序列,得到序列中的每个元素,将每个元素交给前边的函数逻辑处理,返回一个迭代对象,该迭代对象元素个数位置与原来保持一致

    filter():过滤,遍历序列,得到序列中的每个元素,将每个元素交给前边的函数逻辑处理,得到布尔值,True则保留,最终结果返回一个迭代对象

    reduce():合并,遍历序列,得到序列中的每个元素,将每个元素交给前边的函数逻辑处理,进行合并操作,最终结果返回一个值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值