Python map函数()用法
map()函数理论
map()
函数是Python
的内置函数,会根据提供的函数参数,对传入的序列数据进行映射。
所以,map()
函数也称映射函数
。
在Python
中,map
是一个类,有着迭代方法,能够返回对应值。平时也能充当着函数使用:
print(list(map(lambda x:x[0],[[1,2],[3,4]]))) # [1, 3] data = [[1,2],[3,4]] A = map(lambda x:x[0],data) for i in range(len(data)): print(A.__next__()) # 1 # 3
map()语法
最常见的格式为:
map(function,iterables,...)->map
Input
- function: 映射函数
- iterables: 可迭代序列
Output
- 一个可迭代对象
实例一
设计一个函数,将两个数组A
和B
中的元素加起来。
A = [1,2,3,4,5,6,7,8] B = [1,2,3,4,5,6] def my_func(a,b): return a+b print(list(map(my_func,A,B))) #[2, 4, 6, 8, 10, 12]
此时,第一个参数是一个映射(函数),第二,第三个参数则是输入的可迭代对象。map会自动的依次取出可迭代对象中的每个元素,通过映射输出。我们可以通过map.__next__()控制获取每一个元素,或是直接将返回的迭代对象转化为list获取全部元素。
map能够确保数据的最小截断,也就是满足两个或多个可迭代对象进行的最小长度。比如上文提到的,A数组的长度是高于B数组的,但由于map对象的特性,返回值只保留到B的长度。