Python自带函数map(),zip()等
1.map()函数
map()函数的目的是对每个成员迭代执行一个函数操作,最后返回的是一个列表
map(function, sequence[, sequence, ...]) -> list
In [82]: def add100(x):....: return x+100....: In [83]: map(add100,(44,22,66))
Out[83]: [144, 122, 166]
定义一个函数add100(x),map(add100,(44,22,66))就是迭代的对每个数字进行add100(x)的操作,最后返回一个列表数据
In [84]: def abc(a,b,c):....: return a*100 + b*10 + c....:
In [85]: map(abc,(1,2,3),(4,5,6),(7,8,9))
Out[85]: [147, 258, 369]
如果需要迭代执行的函数需要多个参数,那么就为map()提供多个元组
In [91]: map(None,range(3))
Out[91]: [0, 1, 2]
In [92]: map(None,range(3))
Out[92]: [0, 1, 2]
In [93]: map(None,range(3),'abc',(44,55,66))
Out[93]: [(0, 'a', 44), (1, 'b', 55), (2, 'c', 66)]
In [94]: map(None,range(3),'abc')
Out[94]: [(0, 'a'), (1, 'b'), (2, 'c')]
In [95]: map(None,range(3),range(3))
Out[95]: [(0, 0), (1, 1), (2, 2)]
如果想将一行字符串转换成字典就可以这样
In [97]: d='zk_version\t3.4.6'
In [99]: map(str.strip,d.split('\t'))
Out[99]: ['zk_version', '3.4.6']
In [100]: key,value=map(str.strip,d.split('\t'))
In [101]: key
Out[101]: 'zk_version'
In [102]: value
Out[102]: '3.4.6'
In [103]: result[key]=value
In [104]: result
Out[104]: {'zk_version': '3.4.6'}
2.zip()函数
zip()的目的是返回一个元组列表
zip(seq1 [, seq2 [...]]) -> [(seq1[0], seq2[0] ...), (...)]
In [107]: L1=[1,2,3,4]
In [108]: L2=['a','b','c','d']
In [109]: zip(L1,L2)
Out[109]: [(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd')]
In [110]: L3=[10.0,20.0,30.0,40.0]
In [111]: zip(L1,L2,L3)
Out[111]: [(1, 'a', 10.0), (2, 'b', 20.0), (3, 'c', 30.0), (4, 'd', 40.0)]
3.dict()函数
dict()最后返回的是一个字典类型
In [141]: L1
Out[141]: [1, 2, 3, 4]In [142]: L2
Out[142]: ['a', 'b', 'c', 'd']In [143]: zip(L2,L1)
Out[143]: [('a', 1), ('b', 2), ('c', 3), ('d', 4)]In [144]: dict(zip(L2,L1))
Out[144]: {'a': 1, 'b': 2, 'c': 3, 'd': 4}In [145]: dict(a=10,b=20,c=30)
Out[145]: {'a': 10, 'b': 20, 'c': 30}In [146]: dict([('a',100),('b',200),('c',300)])
Out[146]: {'a': 100, 'b': 200, 'c': 300}
参考资料:
https://docs.python.org/2/library/functions.html#zip
http://stackoverflow.com/questions/672172/using-python-map-and-other-functional-tools
https://infohost.nmt.edu/tcc/help/pubs/python/web/map-function.html
转载于:https://blog.51cto.com/john88wang/1745648
Python自带函数map(),zip()等相关推荐
- python中 lambda,map,zip,filter的一些基本用法
#zip用法,拉链 拉锁的作用t1=('a','b') t2=('c','d') print(list(zip(t1, t2))) print(dict(zip(t1, t2)))运行结果 [('a' ...
- Python中lambda、zip、map、reduce函数的使用
一.lambda表达式 lambda表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数.lambda所表示的匿名函数的内容应该是很简单的,如果复杂的话,干脆就重新 ...
- Python函数式编程——map()、reduce()
提起map和reduce想必大家并不陌生,Google公司2003年提出了一个名为MapReduce的编程模型[1],用于处理大规模海量数据,并在之后广泛的应用于Google的各项应用中,2006年A ...
- Effective Python 小笔记之 zip 函数
环境:Python 3.5.1 CentOS 7 zip函数可以同时遍历两个迭代器. 在编写Python代码时,通常要面对很多列表,而这些列表中的对象,可能是相互关联的.如下例: names = [' ...
- Python中的map()函数和reduce()函数的用法
Python中的map()函数和reduce()函数的用法 这篇文章主要介绍了Python中的map()函数和reduce()函数的用法,代码基于Python2.x版本,需要的朋友可以参考下
- python enumerate函数_关于python中enumerate和zip函数的用法及举例
关于python中enumerate和zip函数的用法及举例 关于enumerate函数: enumerate函数可以同时返回列表或元组等可迭代对象的下标和内容,但实际上,enumerate函数实际返 ...
- python lambda map reduce_简单了解python filter、map、reduce的区别
这篇文章主要介绍了简单了解python filter.map.reduce的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 python中有一些 ...
- python用map提取一个数的个十百位数_如何使用python中的map函数?
我们在使用python过程中,为了避免错误删除,会选择做好一个序列后可以插入另外的序列中做为新序列的一部分内容.方便完成一些复杂的工程或多个片段分别编辑后再串成一个完整工程的操作.之前小编向大家介绍了 ...
- python中的map,feilter,和reduce函数
python中的map,feilter,和reduce函数 map() map()的原型是map(function, iterable, -) 参数 function: 传的是一个函数名,可以是pyt ...
- python技能(1)-map函数
2019独角兽企业重金招聘Python工程师标准>>> map()会根据提供的函数对指定的列表做相应的处理 map(function, q1, q2...) 将q1,q2,...qn ...
最新文章
- asp.net 1.1 web.config 讲解
- 科学家揭示灵长类早期胚胎发育多能性的变化模式
- VC++ 解析JSON 学习总结
- java 下拉列表监听_javascript对下拉列表框(select)的操作
- windows 下安装Python
- sum() over (order by )
- Git 提交代码步骤
- 国内信息安全行业常见法律法规介绍及个人理解
- 自然科学期刊能发表计算机论文吗,福建交通科技杂志发表论文能评职称吗
- 如何在PDF页面中插入图片?
- 1155 服务器芯片组,2014年主流主板芯片组分析
- 转载一篇ps更换背景色
- 记QQ群里一次sql优化
- [BZOJ]4864: [BeiJing 2017 Wc]神秘物质
- windowsthinpc虚拟内存_瘦身版Win7:WinTPC深入体验
- 计算机科学与技术论文提纲,论文提纲范文
- android 4.3 模拟器,自制安卓掌机:4.3英寸大屏+骁龙855,通吃所有模拟器
- Quartus II无法打开
- 文案与写作: 如何围绕内容进行设计
- 键盘录入任意字符串并打乱内容(详解)
热门文章
- 辨别Python中load和loads的小技巧
- 中断服务程序设计实验
- 【SimpleITK】使用区域生长法/种子填充法/形态学分割肺-CT img
- python3字典列表_python3_列表、元组、集合、字典
- java page 分页_自己整理写的java分页工具条pageUtil
- git临时保存git stash命令
- iOS AnchorPoint 引起的坐标问题
- 新浪微博客户端(26)-添加转发评论工具条
- 转iOS 多线程 RunLoop 机制 (三)
- eclipse import的项目报autowired cannot be resolved to a type的错误