python:map、filter、reduce函数使用

python:map、filter、reduce函数使用

1 前言

Python的map、filter、reduce函数使用说明。

高阶函数概念:

把函数作为参数传入,这样的函数称为高阶函数,函数式编程就是指这种高度抽象的编程范式。

实质上,函数map,filter和reduce均为高阶函数,它们的输入参数为函数和可迭代对象(list,tumple等),具体形式如下:

map(func, list_data)
filter(func, list_data)
reduce(func, list_data)

2 使用

2.1 map:

map(function,seq[,seq2]) 接收两个参数,第一个是function,第二个是序列:(使用上类似java的jdk8的Stream API的map方法进行值的映射,java的Stream API还有一个flatMap方法,可以扁平式一对多拆分映射)

使用如下,对list中每个值进行平方计算:

nums = [1, 2, 3]
new_nums = list(map(lambda x: x ** 2, nums))
print(new_nums)
# [1, 4, 9]

2.2 filter:

filter(function, seq)接收两个参数,基本作用是对可迭代对象中的元素进行过滤;并返回一个新的可迭代filter对象(使用上类似java的jdk8的Stream API的filter方法,筛选值,返回true的保留,返回false的对应值过滤):

使用如下,保留list中值的平方结果,不为自身的值:

nums = [
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值