这一节,我们将主要学习用于list的三个内建函数: filter(), map(), 和 reduce().

1.filter(function, sequence) 逐个从sequence中取一个元素,传入function,返回一个使function为真的序列。 如果参数sequence是str、unicode或者tuple,则返回相同的类型,否则都返回一个list

参数function:只有一个参数的函数,如果function为None,filter()将返回整个sequence。

参数sequence:一个序列(字符串、元组、列表等)

def testFilter(x):

return x%2 #x是否能被2整除

print filter(testFilter,range(1,10)) #返回不能被2整除的序列

print filter(None,range(1,10)) #返回整个range(1,10)序列

运行结果:

>>>

[1, 3, 5, 7, 9]

[1, 2, 3, 4, 5, 6, 7, 8, 9]

2.map(function, sequence) 逐个从sequence中取一个元素传入function,function的每个返回值组成列表作为map函数的返回值

参数function:可以有一个参数,或者多个参数,如果有多个参数,对应的map函数的sequence参数也应该有多个,并且每个sequence的元素个数相同

参数sequence:一个序列(字符串、元组、列表等)

deftestMap(x,y):return x+yprint map(testMap,range(1,5),range(1,5))print map(testMap,range(1,5),range(1,3))

运行结果:

>>>[2, 4, 6, 8]

Traceback (most recent call last):

File"C:/Users/PC/Desktop/pythonstudy/testfff.py", line 11, in

print map(testMap,range(1,5),range(1,3))

File"C:/Users/PC/Desktop/pythonstudy/testfff.py", line 9, intestMapreturn x+y

TypeError: unsupported operand type(s)for +: 'int' and 'NoneType'

3.reduce(function, sequence) 取sequnce的第一个元素和第二个元素作为初始值传入function,计算后function的返回值和sequnce的下一个元素作为参数传入function进行计算,直到sequence的所有元素计算完成,将最后得到的值作为reduce的返回值

function:两个参数的函数

sequence:一个序列(字符串、元组、列表等)

注:reduce函数还可以有第三个参数,用来初始化第一个用于计算的值

如果sequence只有一个元素,那么reduce将直接返回该值,如果sequence为空,则会引起一个错误

deftestReduce(x,y):return x+yprint reduce(testReduce,range(10)) #打印range(10)的所有元素相加的值,计算过程:0+1+2+..+9

print reduce(testReduce,range(10),10)#打印10和range(10) 所有元素相加的值,计算过程:10+0+1+2+...+9

运行结果:

>>>

45

55

pythonmap和list_(Python)list的内建函数 filter(), map(), 和 reduce()相关推荐

  1. Python迭代器、生成器、map以及reduce

    文章目录 1. 迭代器(iterator) 2. map 2.1 map函数介绍 2.2 map实例 3. reduce 3.1 reduce函数介绍 3.2 reduce实例 4. 生成器(gene ...

  2. python中的zip、map、reduce 、lambda、filter函数的使用

    飞机票 lambda函数 lambda只是一个表达式,函数体比def简单很多. lambda的主体是一个表达式,而不是一个代码块.仅仅能在lambda表达式中封装有限的逻辑进去. lambda表达式是 ...

  3. Python内置函数filter, map, reduce

    filter.map.reduce,都是对一个集合进行处理,filter很容易理解用于过滤,map用于映射,reduce用于归并. 是Python列表方法的三架马车. 1. filter函数的功能相当 ...

  4. hadoop和python的关系_Python 的 map 和 reduce 和 Hadoop 的 MapReduce 有什么关系?

    先说结论.Python 的 map 和 reduce 是Python的内置函数,而 Hadoop 的 MapReduce 是一个计算框架. 两者之间没有直接的关系.但是他们的部分计算操作思想是类似的. ...

  5. python基础教程:filter(),map()函数用法

    filter()函数是什么 filter(func, iterable) filter接收的是可迭代对象中的每个元素作为func的参数,返回的是bool值,函数中设置的是判断条件 返回的是在bool值 ...

  6. python高阶函数、map reduce 自己如何去定义_「python」高阶函数map、reduce的介绍

    Python map 先看官方介绍: map(function, iterable, ...)Return an iterator that applies function to every ite ...

  7. [转载] Python 内置函数 lambda、filter、map、reduce

    参考链接: Python lambda (匿名函数) | filter, map, reduce Python 内置了一些比较特殊且实用的函数,使用这些能使你的代码简洁而易读. 下面对 Python ...

  8. Python内建函数之——filter,map,reduce

    原文链接:http://blog.csdn.net/prince2270/article/details/4681299 在讲述filter,map和reduce之前,首先介绍一下匿名函数lambda ...

  9. Python高级特性: 函数编程 lambda, filter,map,reduce

    一.概述 Python是一门多范式的编程语言,它同时支持过程式.面向对象和函数式的编程范式.因此,在Python中提供了很多符合 函数式编程 风格的特性和工具. 以下是对 Python中的函数式编程 ...

最新文章

  1. 目标识别的选择性搜索
  2. 傅里叶变换在图像处理中的应用初步学习
  3. 怎么设置滚轮拖动_解决三斜线表头一拖动就变形的问题,再也不用一次一次的调整了...
  4. Oracle Sql 语法收集.
  5. centos6.8安装oracle12C 详细步骤讲解
  6. C#的多线程机制探索5
  7. 【转】十八个绝招把你从压力中营救出来
  8. MapReduce官方案例wordcount
  9. [Java][Android] 多线程同步-主线程等待所有子线程完成案例
  10. android toast显示时间,Android Toast自定义显示时间
  11. 随着稻香河流继续奔跑 ——致2016
  12. SpringBoot系列之集成EasyExcel导入合并行数据
  13. win7如何设置通电自动开机_win7系统如何自动开机|win7自动开机的方法
  14. 一篇文章“简单”认识《生成对抗网络》(GAN)
  15. cs224n学习笔记
  16. 【文献查找神器】Connected Papers
  17. IntelliJ IDEA设置系列(五):类代码模板自定义(注释)
  18. A7.2022年全国数学建模竞赛A题-波浪能最大输出功率设计-赛题分析与讨论
  19. 汉字编码与编程相关问题总结:ASCII、机内码、区位码、国标码、Unicode码他们之间是如何转换的
  20. 完美解决Could not find a version that satisfies the requirement xxx (from versions: )

热门文章

  1. android studio下生成aar文件,本地调用
  2. scp复制linux系统的文件文件到本机(windows)以及本机文件复制到远程的命令
  3. mysql5.6+master+date_MySQL5.6的4个自带库详解
  4. java开发技术心得_Java开发核心技术面试心得分析
  5. oracle 后台进程管理,Oracle background processes后台进程
  6. 使用Web API ASP.NET Core 2.2部署Angular 8应用程序
  7. MooTool 1.0.0 发布,开发者常备桌面小工具
  8. c# docx格式word文档导入
  9. SQL 之后,GQL 成为 ISO/IEC 国际标准数据库语言项目
  10. python try catch打印到日志_django 捕获异常和日志系统过程详解