使用Python中内置的map函数对列表进行映射
发布时间:2023-10-11 21:48:18
Python中的内置函数map()用于对列表或其他可迭代对象中的每个元素进行映射操作。它接受一个函数和一个可迭代对象作为参数,并返回一个新的可迭代对象。
下面是使用map()函数对列表进行映射的几种常见用法:
1. 使用匿名函数对列表中的每个元素进行操作:
numbers = [1, 2, 3, 4, 5] squared = list(map(lambda x: x**2, numbers)) print(squared)
输出结果为:[1, 4, 9, 16, 25]
在这个例子中,我们定义了一个匿名函数 lambda x: x**2,该函数对传入的参数进行平方操作。然后,我们将numbers列表中的每个元素传递给该函数,并将返回的结果收集到一个新的列表square中。
2. 使用内置函数对列表中的每个元素进行操作:
names = ["Alice", "Bob", "Charlie"] uppercased = list(map(str.upper, names)) print(uppercased)
输出结果为:['ALICE', 'BOB', 'CHARLIE']
在这个例子中,str.upper是一个内置函数,用于将字符串转换为大写字母。我们将names列表中的每个元素传递给该函数,并将返回的结果收集到一个新的列表uppercased中。
3. 使用自定义函数对列表中的每个元素进行操作:
def add_one(num):
return num + 1
numbers = [1, 2, 3, 4, 5]
incremented = list(map(add_one, numbers))
print(incremented)
输出结果为:[2, 3, 4, 5, 6]
在这个例子中,我们定义了一个自定义函数 add_one(),该函数接受一个数字作为参数,并返回该数字加一的结果。然后,我们将numbers列表中的每个元素传递给该函数,并将返回的结果收集到一个新的列表incremented中。
总结来说,使用map()函数可以方便地对列表中的每个元素进行映射操作,无论是使用匿名函数、内置函数还是自定义函数,都可以轻松地将原始列表映射为一个新的列表。
