map()是python内置函数,会根据提供的函数对指定的序列做一一映射。
map()函数的格式为:
map(function,iterable,...)第一个参数接受一个函数名,后面的参数接受一个或多个可迭代的序列,返回的是一个集合。
def func(x): return x + 1 map(func, [1, 2, 3, 4]) # 返回 # [2, 3, 4, 5]如果遇到简单的函数,无需定义的话,直接使用lambda匿名函数和map()相结合,能使代码变得精简。
map(lambda x,y:x+y, [1,2,3], [4,5,6]) # 返回 # [5, 7, 9]当不传入function函数是,map()就等同于zip(),将多个列表,相同位置的元素,合并到一个元组。
map(None,[2,4,6],[3,2,1]) # 结果如下 [(2,3),(4,2),(6,1)]通过map还可以实现类型转换:
1、将元组转化为list
map(int,(1,2,3)) # 返回 # [1,2,3]2、将字符串转化为list
map(int,'1234') # 返回: # [1,2,3,4]3、提取字典中的key,并将结果放在一个list
map(int,{1:2,2:3,3:4}) # 返回 # [1,2,3]记住map返回的是一个集合。