python中的map()函数是一个内置的高阶函数,通常用法是map(function, iterable)。须要传入一个函数,这个函数能够是内置的,也能够是本身定义,也能够是匿名函数。第二个参数是一个可迭代对象,如列表,字符串等等。返回的是一个map对象,注意不是列表不能直接输出,能够经过for循环或者list()来显示。(python2返回的是列表)python
很少说,直接上代码,一看就明白了。app
def square(x): return x*x a=map(square,[1,2,3]) print(a) #输出为<map object at 0x0033CFB0> 能够看出map返回的其实是一个map对象 print(list(a)) #输出为[1, 4, 9] 经过list()方式 显示出来
#也能够经过for循环来取出内容
ls=[]
for i in a:
ls.append(i)
print(ls)
#输出为[1, 4, 9]
其实map,不止能传入一个可迭代对象作为参数。也能够传入两个。看例子就能够体会到这用法函数
ls1='ABC' ls2='abc' print(list(map(lambda x,y:x+y,ls1,ls2))) #['Aa', 'Bb', 'Cc']
如果传入的多个可迭代对象长度不相同,则按最短的长度进行处理(这是针对python3的)。具体用法以下:spa
ls1='ABC' ls2='ab' print(list(map(lambda x,y:x+y,ls1,ls2))) #['Aa', 'Bb']