1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| map是python内置函数,会根据提供的函数对指定的序列做映射。 map()函数的格式是: map(function,iterable,...)
把函数依次作用在iterable中的每一个元素上,得到一个新的元组并返回。注意,map不改变原iterable,而是返回一个新元组。
***map()函数实例*** del square(x): return x ** 2 map(square,[1,2,3,4,5])
[1,4,9,16,25]
通过使用lambda匿名函数的方法使用map()函数: map(lambda x, y: x+y,[1,3,5,7,9],[2,4,6,8,10])
[3,7,11,15,19]
通过lambda函数使返回值是一个元组: map(lambdax, y : (x**y,x+y),[2,4,6],[3,2,1])
[(8,5),(16,6),(6,7)]
当不传入function时,map()就等同于zip(),将多个列表相同位置的元素归并到一个元组: map(None,[2,4,6],[3,2,1])
[(2,3),(4,2),(6,1)]
通过map还可以实现类型转换 将元组转换为list: map(int,(1,2,3))
[1,2,3]
将字符串转换为list: map(int,'1234')
[1,2,3,4]
提取字典中的key,并将结果放在一个list中: map(int,{1:2,2:3,3:4})
[1,2,3]
|