python中filter,map,reduce的作用


Posted in Python onJune 10, 2022

一、map函数

作用:map主要作用是计算一个序列或者多个序列进行函数映射之后的值

语法:map(function,iterable1,iterable2)

说明:function中参数值可以是一个,也可以是多个;iterable代表function运算中的参数值,有几个参数值就传入几个iterable

注意:1.迭代器需要进行列表转换 2.map中如果传入的序列长度不一,会依据最短的序列计算

1. lambda函数

x=[1,2,3,4]
y=[5,6,7,8]
print(list(map(lambda x,y:(x+y),x,y)))

输出结果:

[6, 8, 10, 12]

2. 自定义函数

def m_num(x,y):
   return  x+y
print(list(map(m_num,x,y)))

输出结果:

[6, 8, 10, 12]

思路:

把列表1中的元素与列表2中元素依次相加

1+5
2+6
3+7
4+8

二、filter函数

作用:filter主要作用是过滤掉序列中不符合函数条件的元素

语法:fliter(function,sequence)

说明:function可以是匿名函数或者自定义函数,可以对后面的sequence序列的每个元素判定是否符合条件;sequence可以是列表、元组或者字符串

1. lambda函数

num = [2,3,6,9,90,23,88]
#输出的是filter对象 <filter object at 0x00000113BF8C7390>
print(filter(lambda x:x>10,num))
#需要转成list [90, 23, 88]
print(list(filter(lambda x:x>10,num)))

输出结果:

<filter object at 0x00000113BF8C7390>
[90, 23, 88]

注意:迭代器需要进行列表转换

2. 自定义函数

def fil_num(x):
   return x>10

print(list(filter(fil_num,num)))

思路:

把列表中不需要的元素去掉,那首先要确定要过滤得条件是什么

三、reduce函数

作用:reduce是对一个序列进行计算,结果只得到一个值

语法:reduce(function,iterable)

说明:function中必须传入两个参数,iterable可以是列表或者元组

注意:reduce使用前需要导包 from functools import reduce

1. lambda函数

from functools import reduce
x=[1,2,3,4,5]
print(reduce(lambda x,y:(x*y),x))

2. 自定义函数

from functools import reduce
x=[1,2,3,4,5]
def ca(x,y):
    return x*y
print(reduce(ca,x))

思路:

对一个列表里的元素做计算,从左到右依次计算两个元素,将得到得值跟下一个元素计算

12 = 2
23 = 6
64 = 24
245 = 120

到此这篇关于python中filter,map,reduce的作用的文章就介绍到这了,更多相关python map reduce内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

Python 相关文章推荐
python 算法 排序实现快速排序
Jun 05 Python
CentOS中使用virtualenv搭建python3环境
Jun 08 Python
Python 3中的yield from语法详解
Jan 18 Python
Python中一行和多行import模块问题
Apr 01 Python
Django实现支付宝付款和微信支付的示例代码
Jul 25 Python
python时间序列按频率生成日期的方法
May 14 Python
Django中Middleware中的函数详解
Jul 18 Python
python+Django+pycharm+mysql 搭建首个web项目详解
Nov 29 Python
简单了解python装饰器原理及使用方法
Dec 18 Python
基于Pytorch SSD模型分析
Feb 18 Python
使用Python将图片转正方形的两种方法实例代码详解
Apr 29 Python
scrapy实践之翻页爬取的实现
Jan 05 Python
Django框架中模型的用法
Jun 10 #Python
Django框架中视图的用法
Jun 10 #Python
python基础之//、/与%的区别详解
Jun 10 #Python
Django框架中表单的用法
Jun 10 #Python
移除Selenium中window.navigator.webdriver值
Jun 10 #Python
Django框架模板用法详解
Jun 10 #Python
python库Tsmoothie模块数据平滑化异常点抓取
You might like
无数据库的详细域名查询程序PHP版(5)
2006/10/09 PHP
使用cookie实现统计访问者登陆次数
2013/06/08 PHP
PHP制作图形验证码代码分享
2014/10/23 PHP
JQuery中的ready函数冲突的解决方法
2010/05/17 Javascript
一个报数游戏js版(约瑟夫环问题)
2010/08/05 Javascript
jcarousellite.js 基于Jquery的图片无缝滚动插件
2010/12/30 Javascript
如何使用jQuery来处理图片坏链具体实现步骤
2013/05/02 Javascript
JS实现div居中示例
2014/04/17 Javascript
jQuery实现异步获取json数据的2种方式
2014/08/29 Javascript
使用node.js 获取客户端信息代码分享
2014/11/26 Javascript
js实现点击添加一个input节点
2014/12/05 Javascript
Bootstrap企业网站实战项目4
2016/10/14 Javascript
常用的js方法合集
2017/03/10 Javascript
JS实现元素上下左右移动效果
2017/10/18 Javascript
angularJS实现动态添加,删除div方法
2018/02/27 Javascript
浅谈webpack-dev-server的配置和使用
2018/05/17 Javascript
用Node提供静态文件服务的方法
2018/07/06 Javascript
node使用Mongoose类库实现简单的增删改查
2018/11/08 Javascript
详解关于Angular4 ng-zorro使用过程中遇到的问题
2018/12/05 Javascript
详解vue路由
2020/08/05 Javascript
[01:14]辉夜杯战队访谈宣传片—NEWBEE.Y
2015/12/26 DOTA
Python深入学习之内存管理
2014/08/31 Python
python测试驱动开发实例
2014/10/08 Python
在IIS服务器上以CGI方式运行Python脚本的教程
2015/04/25 Python
Django imgareaselect手动剪切头像实现方法
2015/05/26 Python
Django + Uwsgi + Nginx 实现生产环境部署的方法
2018/06/20 Python
python实现猜数字小游戏
2020/03/24 Python
Python任意字符串转16, 32, 64进制的方法
2019/06/12 Python
PyTorch中Tensor的维度变换实现
2019/08/18 Python
Python3 把一个列表按指定数目分成多个列表的方式
2019/12/25 Python
Python RabbitMQ实现简单的进程间通信示例
2020/07/02 Python
MATLAB数学建模之画图汇总
2020/07/16 Python
请解释一下webService? 如何用.net实现webService
2014/06/09 面试题
高中生学期学习自我评价
2014/02/24 职场文书
公司开业庆典策划方案
2014/06/04 职场文书
惊天动地观后感
2015/06/10 职场文书