map、filter、reduce函数

map

#函数需要?个参数
m1 = map(lambda x:x*x,[1,2,3])
print(list(m1))

#函数需要两个参数
m2 = map(lambda x,y:x+y,[1,2,3],[4,5,6])
print(list(m2))

def	f1(x,y):
    return	(x,y)
l1 = [0,1,2,3,4,5,6]
l2 = [‘Sun‘,‘M‘,‘T‘,‘W‘,‘T‘,‘F‘,‘S‘]
l3 = map(f1,l1,l2)
print(list(l3))

  输出

[1, 4, 9]
[5, 7, 9]
[(0, ‘Sun‘), (1, ‘M‘), (2, ‘T‘), (3, ‘W‘), (4, ‘T‘), (5, ‘F‘), (6, ‘S‘)]

  

filter

from collections import Iterator
f1 = filter(lambda x:x%2, [1,2,3])
print(f1)
print(list(f1))
print(isinstance(f1, Iterator))

  输出

<filter object at 0x00000176DB8075C0>
[1, 3]
True

  

reduce

from functools import reduce
r1 = reduce(lambda x,y:x+y,[1,2,3,4])
r2 = reduce(lambda x,y:x+y,[1,2,3,4],5)
r3 = reduce(lambda x,y:x+y,[‘aa‘,‘bb‘,‘cc‘],‘dd‘)
print(r1)
print(r2)
print(r3)

  输出

10
15
ddaabbcc

  

原文地址:https://www.cnblogs.com/xone/p/10292157.html

时间: 2024-11-09 03:37:59

map、filter、reduce函数的相关文章

【python】filter,map和reduce函数介绍

filter(function, iterable)map(function, iterable)reduce(function, sequence) filter将 function依次作用于iterable的每个元素,如果返回值为true, 保留元素,否则从iterable里面删除.function必须返回是一个bool类型的函数.例如: def test(x): return (x > 3) filter(test, [1, 2, 3, 4, 5]) =====> [4, 5] map将

Swift详解之五-----------map,filter,reduce

map,filter,reduce 注:本文为作者自己总结,过于基础的就不再赘述 ,都是亲自测试的结果.如有错误或者遗漏的地方,欢迎指正,一起学习. 关于Swift 中String .数组 .字典的基本用法这里就不再赘述了,这些都很简单 不会的 在用得时候baidu下就行了.这里主要看下这几个高阶函数 map map方法,其获取一个闭包表达式作为其唯一参数. 数组中的每一个元素调用一次该闭包函数,并返回该元素所映射的值(也可以是不同类型的值). 具体的映射方式和返回值类型由闭包来指定. 当提供给

map和reduce函数的使用

map和reduce函数是定义在Array中的两个方法,可用于提高处理数组的性能和简化代码. 关于它们的概念,参考Google这篇大名鼎鼎的论文"MapReduce: Simplified Data Processing on Large Clusters". map map函数是一个高阶函数,它会调用传入的函数来隐式的处理Array中的每一个元素,因此当我们确定好需要对数组中的每个元素进行的操作时,可先定义好处理的方法, 然后在通过map函数将定义好的函数作为参数传进去,这样浏览器就

Python自学笔记-map和reduce函数(来自廖雪峰的官网Python3)

感觉廖雪峰的官网http://www.liaoxuefeng.com/里面的教程不错,所以学习一下,把需要复习的摘抄一下. 以下内容主要为了自己复习用,详细内容请登录廖雪峰的官网查看. Python内建了map()和reduce()函数. 我们先看map.map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回. 举例说明,比如我们有一个函数f(x)=x2,要把这个函数作用在一个list [1, 2, 3,

Python中map,filter,reduce的应用

事例1: l=[('main', 'router_115.236.xx.xx', [{'abc': 1}, {'dfg': 1}]), ('main', 'router_183.61.xx.xx', [{'abc': 0}, {'dfg': 1}]), ('main', 'router_52.11.xx.xx', [{'abc': 0}, {'dfg': 1}]), ('main', 'router_183.17.xx.xx', [{'abc': 1}, {'dfg': 1}]) ] 检查参数l

python 内置函数 map filter reduce

map(函数名,可遍历迭代的对象) # 列组元素全加 10 # map(需要做什么的函数,遍历迭代对象)函数 map()遍历序列得到一个列表,列表的序号和个数和原来一样 l = [2,3,4,5,6,7,8] t = list(map(lambda x:x+10,l)) #遍历 l,l 里的元素全加10 map得到的结果是可迭代对象所以要list print(t) #===>[12, 13, 14, 15, 16, 17, 18] filter(函数名,可遍历迭代的对象) # filter(返回

3.python中map,filter,reduce以及内部实现原理剖析

一.map函数,对任何可迭代序列中的每一个元素应用对应的函数.(不管处理的是什么类型的序列,最后返回的都是列表.) 作用已经在标题中介绍过了,那么先来说说map函数的用法吧. map(处理逻辑可以是函数也可以是lambda表达式,可迭代的序列) 现在有一个列表. l1 = [1,2,3,4,5] 现在需要给这个列表里的每一个元素都+1.(当然,使用for循环可以做到对序列中的每个元素进行处理,但使用map函数会更加方便.) 首先,定义一个逻辑函数,要如何对序列中的每一个元素进行处理. def p

lambda,map,filter,reduce

lambda 编程中提到的 lambda 表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数.返回一个函数对象. func = lambda x,y:x+y func相当于 def func(x,y): return x+y l = lambda x: x[0] if x else '' 可以直接调l对列表进行处理 map,reduce,filter中的function都可以用lambda表达式来生成 map map函数会根据提供的函数对指定序列做映射. m

Python-遍历-zip/map/filter/reduce

zip函数: 同时循环多个同样长的函数,并返回一个包含了每个参数元组对应元素的元组. 如果函数并不一致,则采用截取方式,使得返回的结果元组的长度为各个参数元组长度最小值. 函式说明:zip(seq1[,seq2[,seq3[...]]])--->[(seq1(0),seq2(0),...),(seq1(1),seq2(1),...),(...)] 1 >>>for x,y,z in zip([1,2,3],[4,5,6],[7,8,9]) 2 >>>print x

python的map和reduce函数

map函数时python的高级内置函数 语法为:map(function, iterable, ...) 参数:function -- 函数iterable -- 一个或多个序列 将function作用于iterable序列中的每一个元素,并将调用的结果返回 主要是为了并行运算,非常高效 1. 一个输入参数,输入为列表 # 1. 一个参数 def map_func(x): res = x**2 return res a1 = map(map_func, [1,2,3]) #直接返回的是objec