码迷,mamicode.com
首页 > 其他好文 > 详细

map函数用法详解

时间:2017-12-13 02:19:45      阅读:273      评论:0      收藏:0      [点我收藏+]

标签:元组   它的   list   color   列表   使用   改变   可迭代对象   def   

map函数是Python内置的高阶函数,它是一个典型的函数式编程例子。
它的参数为: 一个函数function、一个或多个sequence。
通过把函数function依次作用在sequence的每个元素上,得到一个新的sequence并返回。
注意:map函数不改变原有的sequence,而是返回一个新的sequence。

以列表为例说明:
lst = [1, 2, 3, 4, 5, 6, 7, 8, 9,10]
希望得到lst中每个元素的平方,这时我们就可以用到map函数。

#Python版本: 3.3.4
#1.常规方法
>>> lst = [1, 2, 3, 4, 5, 6, 7, 8, 9,10]
>>> def square(x):
return x**2

>>> list(map(square,lst))     #Python2.x使用map(square,lst)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

#2.使用lambda函数
>>> list(map(lambda x:x**2,lst))     #Python2.x使用map(lambda x:x**2,lst)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

>>> [(lambda x:x**2)(x) for x in lst]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

#map函数除了作用于数字列表外,还可以作用于字符串和元组。
#例如:
>>> list(map(ord,abcdef))
[97, 98, 99, 100, 101, 102]

#当传入多个可迭代对象时,且它们元素长度不一致时,生成的迭代器只到最短长度
>>> list(map(lambda x,y:x+y,abc,de)) 
[ad, be]

 

map函数用法详解

标签:元组   它的   list   color   列表   使用   改变   可迭代对象   def   

原文地址:http://www.cnblogs.com/huangbiquan/p/8030305.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!