python--map、reduce、filter函数使用

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

前言

本文主要介绍Python几个高级函数的用法,主要是map()、reduce()、filter()

一、map()函数

map函数包含两个参数,一个是传入的方法,一个是一个可迭代的对象,日常中一般用于对于一个迭代对象中的值做一些处理时,可以使用map函数来操作。map返回的是一个map对象,可通过循环来获取值
示例如下:

#使用map函数计算列表每个值乘以2后的结果
def test(x):
    return x *2
result = map(test,[1,2,3,4])
for i in result:
    print(i)
#使用map函数将列表每个值转换成str类型
result = map(str,[1,2,3,4])

二、filter()函数

filter函数包含两个参数,一个是传入的方法,一个是一个可迭代的对象,用于处理数据根据条件进行过滤。filter返回的是filter的对象,可通过循环获取值
示例如下:

#使用filter函数,处理一个列表中整除2等于1
def test(x):
    return x //2 ==1
result = filter(test,[2,4,6,8,10])
for i in result:
    print(i)

三、reduce()函数

reduce函数使用需要通过导入from functools import reduce才能够正常使用reduce()函数可用于计算一个可迭代对象中的结果集进行使用,与filter和map不同的是,它是一个函数中需要传入两个值和一个可迭代对象,reduce会将结果继续和迭代对象中下一个环境进行处理,且reduce是直接返回处理结果数据。
示例如下:

from functools import reduce
def test(x,y):
    return x*y
result = reduce(test,[1,2,3,4,5,6,7])

总结

python这些高阶函数在日常编码过程中还是比较便捷的,可以根据不同场景使用不同的函数可以使代码看着更简洁,其中test()函数可通过lambda函数进行替换后续在继续介绍lambda函数的使用

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值