python中有一些非常有趣的函数,面试的时候可能会遇到。今天也来总结一下,不过该类的网上资料也相当多,也没多少干货,只是习惯性将一些容易遗忘的功能进行整理。

lambda 为关键字。filter,map,reduce为内置函数。

lambda:实现python中单行最小函数。

g = lambda x: x * 2

#相当于

defg(x):return x*2

filter(function, sequence):对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tuple(取决于sequence的类型)。

filter(function or None, sequence) -> list, tuple, or string:入参为函数和列表/元组/字符串,返回值为item列表/元组/字符串。

map(function, sequence) :对sequence中的item依次执行function(item),将执行结果function(item)组成一个List返回。

map(function, sequence[, sequence, ...]) -> list:入参是为函数和列表/元组/字符串,返回值为function(item)列表。

reduce(function, sequence, starting_value):对sequence中的item顺序迭代调用function,如果有starting_value,还可以作为初始值调用。function接收的参数个数只能为2,先把sequence中第一个值和第二个值当参数传给function,再把function的返回值和第三个值当参数传给function,然后只返回一个结果。

reduce(function, sequence[, initial]) -> value:入参是为函数和列表/元组/字符串和初始值,返回值为数值。

注意:python3和python2有很大区别,print变为print函数,一定要加括号。filter和map返回的也不是字符串,列表,元组了,而是一个可迭代的对象,要将其转换为列表,则使用list()来转换。

用法举例:

#coding=utf-8

'''Created on 2016-12-14

@author: Jennifer

项目:Python中filter、map、reduce、lambda 的用法'''

#1.lambda用法,冒号之前的是入参,冒号之后的是表达式,返回的值,最简单的函数

print [(lambda x:x*x)(x)for x in range(11)]#结果:[0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

print (lambda x:x*x)(3)#结果:9

g=lambda x:x*xprint g(4)#结果:16

#2.filter用法:返回执行结果为TRUE的入参(入参是列表字符元组)

print filter(lambda x:x*x-4,range(10))#结果:[0, 1, 3, 4, 5, 6, 7, 8, 9]

#3.map的用法:对列表入参依次执行函数。入参为列表,有多少个列表,就应该有多少个入参。

print map(lambda x:x*x-4,range(10))#结果:[-4, -3, 0, 5, 12, 21, 32, 45, 60, 77]

print map(lambda x,y:x*y-4,range(3),[8,9,10])#结果:[-4, 5, 16]

#4.reduce用法:先把sequence中第一个值和第二个值当参数传给function,再把function的返回值和第三个值当参数传给fuction,最终返回一个结果值#接收的入参个数只能为2

print reduce(lambda x,y:x*y-4,range(4))#结果:-40#计算0到100的和

print reduce(lambda x,y:x+y, range(101))#结果:5050

print reduce(lambda x,y:x+y, range(101),100)#结果:5150

python map lambda 分割字符串_python之lambda、filter、map、reduce的用法说明(基于python2)...相关推荐

  1. python map lambda 分割字符串_python六剑客:map()、lambda()、filter()、reduce()、推导类表、切片...

    一:map():映射 map()函数在python2和python3中是区别的 python2中的定义:映射后,返回一个列表 >>> help(map) Help on built- ...

  2. python map lambda 分割字符串_Python特殊语法:filter、map、reduce、lambda [转]

    Python内置了一些非常有趣但非常有用的函数,充分体现了Python的语言魅力! filter(function, sequence):对sequence中的item依次执行function(ite ...

  3. python map lambda 分割字符串_[转] Python特殊语法:filter、map、reduce、lambda

    Python内置了一些非常有趣但非常有用的函数,充分体现了Python的语言魅力! filter(function, sequence):对sequence中的item依次执行function(ite ...

  4. Python使用正则表达式分割字符串

    re.split(pattern, string, [maxsplit], [flags]) pattern:表示模式字符串,由要匹配的正则表达式转换而来. string:表示要匹配的字符串. max ...

  5. python无效的类字符串_Python基础-字符串处理

    ​你好,我是goldsunC 让我们一起进步吧! 字符串操作与处理 字符串是编程语言中经常会遇见的东西,而字符串又和那些编程语句什么的不太一样,我们可能需要对一个字符串进行各种各样的处理,后面我将给出 ...

  6. python读取路径中字符串_python实现提取str字符串/json中多级目录下的某个值

    字符串多级目录取值: 比如说: 你response接收到的数据是这样的. 你现在只需要取到itemstring 这个字段下的值.其他的都不要! 思路就是:字符串是个json格式(或转为json格式), ...

  7. python用户输入一行字符串_python字符串练习

    1. 输入一个字符串,打印所有奇数位上的字符(下标是1,3,5,7-位上的字符) 例如: 输入'abcd1234 ' ** 输出'bd24'** str1 = input('请输入:') for it ...

  8. python 只取年月日 字符串_Python基础:数据类型和变量amp;字符串和编码

    Python基础:1.数据类型和变量 数据类型 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网 ...

  9. python按年月日输出字符串_python日期时间转为字符串或者格式化输出的实例

    python日期时间转为字符串或者格式化输出的实例 如下所示: 年月日时分秒 >>> print datetime.datetime.now().strftime("%Y- ...

最新文章

  1. 2021年全网最详细大数据常见端口汇总❤️【建议收藏】❤️
  2. 多人VR游戏或成未来VR游戏发展的爆点
  3. Linux命令——cp
  4. 独立按键控制数码管c语言,各位大佬,独立按键控制数码管为什么按下的时候要加一呢?...
  5. get和post有什么区别
  6. PWA(Progressive Web App)入门系列:Cache Storage Cache
  7. 陈奕迅为什么也哭穷?
  8. 安装和配置SQL Server Reporting Services (SSRS)
  9. python flask实战视频_Python Flask打造一个视频网站实战视频教程
  10. 去掉源代码里的debug标致
  11. VC2015搭建OpenCV环境(超详细教程)
  12. 2018入门微单相机推荐
  13. 网络基础(六)-- 路由器的转发原理,路由表,静态路由及其配置
  14. 删除字符 (20分)
  15. cortex m3/m4处理器的复位设计
  16. HAUT 1262 魔法宝石(spfa)(河南工业大学2017校赛)
  17. spring实习总结
  18. 虚拟机创建静态ip连接到外网
  19. Django初印象之视图(view)
  20. checksum java_Checksum getChecksum()

热门文章

  1. 比亚迪秦wince玩游戏_【新闻】1.5T比亚迪秦Pro或要降价/多款亲民新车上市!
  2. antdesign 所兼容的浏览器_Edge 87.0最新离线稳定版浏览器
  3. 我对观察者模式的理解,之前一直很乱
  4. 微信小程序python数据交换代码_一个微信小程序通过 DDP 协议和 Meteor 后端交换数据的简单例子...
  5. 第五篇: mysqlduomp 实时增量备份、innobackupex(完全备份与 恢复、增量备份与恢复)
  6. Nginx--------地址重写
  7. 平面设计师如何掌握色彩心理学(实用技巧)
  8. 服务器 操作系统安装到sd卡,DELL服务器通过sd卡安装系统(iDRAC Use vFlash ).doc
  9. python宏替换_#和##在宏替换中的作用
  10. python怎么字体加阴影_如何添加阴影到tkinter帧?