在Python中,map() 函数用于将一个函数应用到一个或多个可迭代对象的每个元素上,并返回一个将该函数应用到每个元素后的结果组成的迭代器。其基本语法格式如下:
map(function, iterable)
其中,function 是要应用的函数,可以是内置函数、自定义函数或 lambda 函数;iterable 是一个或多个可迭代对象,如列表、元组等。
下面是一个简单的示例,将一个列表中的每个元素都平方后返回一个新的列表:
# 定义一个函数,用于计算平方
def square(x):
return x ** 2
# 定义一个列表
numbers = [1, 2, 3, 4, 5]
# 使用 map() 函数将 square 函数应用到 numbers 列表的每个元素上
result = map(square, numbers)
# 将结果转换为列表并打印
print(list(result))
输出结果为:
[1, 4, 9, 16, 25]
除了使用自定义函数,我们还可以使用 lambda 函数来简化代码,例如:
numbers = [1, 2, 3, 4, 5]
result = map(lambda x: x ** 2, numbers)
print(list(result))
输出结果与之前相同。map() 函数也支持同时传入多个可迭代对象,例如:
numbers1 = [1, 2, 3, 4, 5]
numbers2 = [6, 7, 8, 9, 10]
result = map(lambda x, y: x + y, numbers1, numbers2)
print(list(result))
这样就可以将两个列表中对应位置的元素相加,并返回一个新的列表。