Map函数


map函数的用法如下:

def add_one(x):
return x+1 #使用普通函数
v1 = map(add_one,[1,2,3])
v1 = list(v1)
print(v1) #打印结果为[2, 3, 4] #使用匿名函数,代码更为简洁
v2 = map(lambda x:x+1,[1,2,3])
v2 = list(v2)
print(v2) #打印结果为[2, 3, 4]

从代码可以看出,map()函数有两个传参,第一个为函数名,第二个为可迭代对象,效果是将可迭代对象的每一个元素放入函数中执行,然后把函数执行的返回值联合一起组成一个新的可迭代对象

filter函数


filter函数的用法如下:

def judge_sb(x):
return x.startswith("sb") #使用普通函数
v1 = filter(judge_sb,sb_list)
v1 = list(v1)
print(v1) #打印结果为['sb_001', 'sb_002'] #使用匿名函数,代码更为简洁
v2 = filter(lambda x:x.startswith("sb"),sb_list)
v2 =list(v2)
print(v2) #打印结果为['sb_001', 'sb_002']

从代码可以看出,filter()函数有两个传参,第一个为函数名,第二个为可迭代对象,效果是将可迭代对象的每一个元素放入函数中执行,然后把函数执行的返回值为真,就把那个传参保留,如果为假就舍弃,最终将传参联合一起组成一个新的可迭代对象

reduce函数


reduce函数的用法如下:

from functools import reduce   #要导入模块
def add(x,y):
return x+y #使用普通函数
v1 = reduce(add,[1,2,5,7])
print(v1) #打印结果为15 #使用匿名函数,代码更为简洁
v2 = reduce(lambda x,y:x+y,[1,2,5,7])
print(v2) #打印结果为15

从代码可以看出,filter()函数有两个传参,第一个为函数名,第二个为可迭代对象,效果是将可迭代对象的每一个元素进行类似累加、累乘这种压缩的操作,最后返回一个值

总结


#处理序列中的每个元素,得到的结果是一个可迭代对象,其元素个数及位置与原来一样

map()

#遍历序列中的每个元素,判断每个元素得到布尔值,如果True则留下来

filter()

#处理一个序列,然后把序列进行合并操作

reduce()

map函数、filer函数、reduce函数的用法和区别的更多相关文章

  1. 一个 Map 函数、一个 Reduce 函数和一个 main 函数

    MapReduce 最简单的 MapReduce应用程序至少包含 3 个部分:一个 Map 函数.一个 Reduce 函数和一个 main 函数.main 函数将作业控制和文件输入/输出结合起来.在这 ...

  2. Python的map、filter、reduce函数 [转]

    1. map函数func作用于给定序列的每个元素,并用一个列表来提供返回值. map函数python实现代码: def map(func,seq): mapped_seq = []        fo ...

  3. python中的map、filter、reduce函数

    三个函数比较类似,都是应用于序列的内置函数.常见的序列包括list.tuple.str.   1.map函数 map函数会根据提供的函数对指定序列做映射. map函数的定义: map(function ...

  4. filter、map、sorted和reduce函数

    内置函数——filter.map和reduce filter filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回 True或 False,filter ...

  5. python_08 函数式编程、高阶函数、map、filter、reduce函数、内置函数

    函数式编程 编程方法论: 1.面向过程 找到解决问题的入口,按照一个固定的流程去模拟解决问题的流程 (1).搜索目标,用户输入(配偶要求),按照要求到数据结构内检索合适的任务 (2)表白,表白成功进入 ...

  6. Python小白学习之路(十五)—【map()函数】【filter()函数】【reduce()函数】

    一.map()函数 map()是 Python 内置的高阶函数 有两个参数,第一个是接收一个函数 f(匿名函数或者自定义函数都OK啦):第二个参数是一个 可迭代对象 功能是通过把函数 f 依次作用在 ...

  7. map、filter、reduce函数的使用

    1.filter() 作用:过滤 // 1.筛选出大于30的数. const array = [10, 20, 30, 40, 50, 60, 70, 80] // 普通写法 // let newar ...

  8. python学习-day15:函数作用域、匿名函数、函数式编程、map、filter、reduce函数、内置函数r

    ---恢复内容开始--- 一.全局变量与局部变量 在子程序中定义的变量称为局部变量, 在程序的一开始定义的变量称为全局变量. 全局变量作用域是整个程序,局部变量作用域是定义该变量的子程序.当全局变量与 ...

  9. python学习-day16:函数作用域、匿名函数、函数式编程、map、filter、reduce函数、内置函数r

    一.作用域 作用域在定义函数时就已经固定住了,不会随着调用位置的改变而改变 二.匿名函数 lambda:正常和其他函数进行配合使用.正常无需把匿名函数赋值给一个变量. f=lambda x:x*x p ...

  10. 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, ...

随机推荐

  1. 关于css的层叠上下文和层叠顺序问题

    关于css的层叠上下文和层叠样式问题 最近在项目中遇到了一个让我欲仙欲死的问题,我给项目中的图片设置了一个淡入效果,几opacity变化,但当我在它的上面有一个定位元素时,动画结束后,定位元素居然被遮 ...

  2. 转:swing 中paint与paintComponent的区别(jcomponent)

    http://blog.csdn.net/q597756870/article/details/17854247 查API文档,查得在类Jcomponent下的paint方法有以下解释:        ...

  3. Docker Win 10 安装

    最近了解了一下Docker,不看不知道,一了解就完全被它给吸引住了.以往要装个环境,除了要准备一个Linux系统,然后在安装各种版本的类库,再安装我们需要各种应用服务(如Redis,Ngix,Mong ...

  4. POJ-1789 Truck History---最小生成树Prim算法

    题目链接: https://vjudge.net/problem/POJ-1789 题目大意: 用一个7位的string代表一个编号,两个编号之间的distance代表这两个编号之间不同字母的个数.一 ...

  5. C++_进阶之函数模板_类模板

     C++_进阶之函数模板_类模板 第一部分 前言 c++提供了函数模板(function template.)所谓函数模板,实际上是建立一个通用函数,其函数类型和形参类型不具体制定,用一个虚拟的类型来 ...

  6. Python3.5调用Java的jar包

    声明:这个是在一个博客上看到的,过了俩星期了突然找不到原博客了,如果原来的博主看到,请联系我删除~ 主要是怕自己忘记,所以在此记录: 环境 Python3.5+JDK1.8 安装命令:python3 ...

  7. leetcode 561.Array Partition I-easy

    Given an array of 2n integers, your task is to group these integers into n pairs of integer, say (a1 ...

  8. [LeetCode] Exclusive Time of Functions 函数的独家时间

    Given the running logs of n functions that are executed in a nonpreemptive single threaded CPU, find ...

  9. ABP领域层知识回顾之---仓储

    1. 前言  在上一篇博文中 http://www.cnblogs.com/xiyin/p/6810350.html 我们讲到了ABP领域层的实体,这篇博文继续讲ABP的领域层,这篇博文的主题是ABP ...

  10. [NOI 2009]变换序列

    Description 题库链接 对于 \(N\) 个整数 \(0, 1, \cdots, N-1\) ,一个变换序列 \(T\) 可以将 \(i\) 变成 \(T_i\) ,其中 \(T_i \in ...