Python 之map、filter、reduce
MAP
1.Python中的map()、filter()、reduce()
    这三个是应用于序列的内置函数,这个序列包括list、tuple、str.
    格式:
        1>map(func,swq1[,seq2,...])
        第一个参数接受一个函数名,后面的参数接受一个或多个可迭代的序列,返回的是一个集合。
    Python函数编程中map()函数是将func作用域seq中的每一个元素,并将所有的调用的结果作为一个list返回。如果func为None,作用同zip()。(变为一个含有几个元组的列表)
    另一个解释,function可以理解为是一个一对一或者多对一的函数,map作用是以参数序列中的每一个元素调用function函数,返回包含每次function函数返回值的list。
        1.1>比如要对一个序列中的每个元素进行平方运算:
        map(lamda x:x**2,[1,2,3,4,5])'''[1,4,9,16,25]'''
        1.2>在参数存在多个序列时,会依次每个序列中相同位置的元素做参数调用function函数。比如要对两个序列中的元素依次求和。
        map(lambda x,y:x+y,[1,3,5,7,9],[2,4,6,8,10])'''[3,7,11,15,19]'''
        注意:function函数的参数数量,要和map中提供的集合数量相匹配,如果集合长度不等,会以最小长度对所有集合进行截取。
        1.3>当函数为None是,操作和zip相似
        map(None,[1,3,5,7,9],[2,4,6,8,10])'''[(1,2),(3,4),(5,6),(7,8),(9,10)]'''
filter函数
filter函数会对序列执行过滤操作。
1.定义
    filter(function or None,sequence)------>list,tuple ,or string
function是一个谓语函数,接受一个参数,返回布尔值TRUE或FALSE。
filter函数会对序列参数sequence中的每个参数调用function函数,最后返回的结果为TRUE的元素,返回值的类型和参数sequence的类型相同。
2.例子
def is_even(x):
    return x&1  !=  0
filter(is_even,[1,2,3,4,5,6,7,8,9,10])
结果:'''[1,3,5,7,9]'''
reduce 函数
1.定义:reduce(function,sequence[,initial]) --->value
function参数一个有两个参数的函数,reduce依次从sequence中去一个元素,和上一次调用function的结果做参数在此调用function。
第一次调用function时,如果提供initial参数,会以sequence中第一个元素和initial作为参数调用function,否则会以序列sequence中前两个元素做参数调用function。
注意:function函数不能为None
reduce(lambda x,y:x+y,[2,3,4,5,6],1)'''21 ((((((1+2)+3)+4)+5)+6)'''
reduce(lambda x,y:x+y,[2,3,4,5,6])'''20'''
Python 之map、filter、reduce的更多相关文章
- Python中map,filter,reduce,zip的应用
		事例1: l=[('main', 'router_115.236.xx.xx', [{'abc': 1}, {'dfg': 1}]), ('main', 'router_183.61.xx.xx', ... 
- Python【map、reduce、filter】内置函数使用说明(转载)
		转自:http://www.blogjava.net/vagasnail/articles/301140.html?opt=admin 介绍下Python 中 map,reduce,和filter 内 ... 
- 【转】Python 中map、reduce、filter函数
		转自:http://www.blogjava.net/vagasnail/articles/301140.html?opt=admin 介绍下Python 中 map,reduce,和filter 内 ... 
- python常用函数进阶(2)之map,filter,reduce,zip
		Basic Python : Map, Filter, Reduce, Zip 1-Map() 1.1 Syntax # fun : a function applying to the iterab ... 
- Python【map、reduce、filter】内置函数使用说明
		题记 介绍下Python 中 map,reduce,和filter 内置函数的方法 一:map map(...) map(function, sequence[, sequence, ...]) -& ... 
- python 内置函数 map filter reduce lambda
		map(函数名,可遍历迭代的对象) # 列组元素全加 10 # map(需要做什么的函数,遍历迭代对象)函数 map()遍历序列得到一个列表,列表的序号和个数和原来一样 l = [2,3,4,5,6, ... 
- 如何在python3.3用 map filter reduce
		在3.3里,如果直接使用map(), filter(), reduce(), 会出现 >>> def f(x): return x % 2 != 0 and x % 3 != 0 ... 
- Swift map filter reduce 使用指南
		转载:https://useyourloaf.com/blog/swift-guide-to-map-filter-reduce/ Using map, filter or reduce to ope ... 
- 数组的高阶方法map filter reduce的使用
		数组中常用的高阶方法: foreach map filter reduce some every 在这些方法中都是对数组中每一个元素进行遍历操作,只有foreach是没有 ... 
- Python中Lambda, filter, reduce and map 的区别
		Lambda, filter, reduce and map Lambda Operator Some like it, others hate it and many are afraid of t ... 
随机推荐
- css 选择器符号
			1. 空格 —— “后代选择器” 例如下面这个例子,表示div元素里面所有的p元素 div p { ... } 2. > —— “子选择器” 例如下面这个例子,表示div元素里面所有的子代(不含 ... 
- IMPLEMENTING A GRU/LSTM RNN WITH PYTHON AND THEANO - 学习笔记
			catalogue . 引言 . LSTM NETWORKS . LSTM 的变体 . GRUs (Gated Recurrent Units) . IMPLEMENTATION GRUs 0. 引言 ... 
- 苹果手机iOS11中fixed弹出框中input光标错位问题
			最近遇到了一个移动前端的BUG:手机弹出框中的输入框focus时光标可能会错位. 刚开始时我完全不知道错误原因是什么,在电脑上调试时完全没有问题,手机上出现问题时也没有找到规律.后来在网上搜索了大量的 ... 
- JAVA实现C/S结构小程序
			程序功能: 客户端向服务器发送一个本地磁盘中的文件, 服务器程序接受后保存在其他位置. 客户端实现步骤: 创建一个客户端对象Socket,构造方法中绑定服务器的IP地址 和 端口号 使用Socket对 ... 
- WPF中的常用布局
			一 写在开头1.1 写在开头评价一门技术的好坏得看具体的需求,没有哪门技术是面面俱到地好. 1.2 本文内容本文主要内容为WPF中的常用布局,大部分内容转载至https://blog.csdn.net ... 
- Spark Java API 之 CountVectorizer
			Spark Java API 之 CountVectorizer 由于在Spark中文本处理与分析的一些机器学习算法的输入并不是文本数据,而是数值型向量.因此,需要进行转换.而将文本数据转换成数值型的 ... 
- [物理学与PDEs]第2章第4节 激波 4.1 间断连接条件
			1. 守恒律方程 $$\bex \cfrac{\p f}{\p t}+\cfrac{\p q}{\p x}=0 \eex$$ 在间断线上应满足 ``间断连接条件'': $$\bex [f]\cfra ... 
- Coursera, Big Data 1, Introduction (week 3)
			什么是分布式文件系统?为什么需要分布式文件系统? 如果文件系统可以管理用网络连接的很多个存储单元,叫分布式文件系统. 分布式文件系统提供了数据可扩展性,容错性,高并发. 这些是传统文件系统不具有的. ... 
- 在centos7下安装.net core
			在这里记录下安装的过程: 一开始需要去官网下载centos相关的dotnetcore的sdk 上传到linux,解压,发现需要安装libunwind, 安装libunwind:yum install ... 
- PYthon3:简单几步实现冒泡排序
			1.概念理解: 冒泡排序:可以简单的理解为是列表中相近的元素,两两比较,小的在前面.最多需要len()-1次排序. 2.例子:a=[11,7,4,56,35,0] 3.代码实现: 4.输出结果: 第1 ... 
