如何使用Python的map()函数对可迭代对象的每个元素应用函数?
发布时间:2023-06-18 17:58:21
Python的map()函数是一种非常有用的函数,它可以对可迭代对象的每个元素应用一个函数,从而生成一个新的可迭代对象。这个函数是一个高阶函数,它接受两个参数,第一个参数是一个函数,第二个参数是一个可迭代对象。这个函数会对可迭代对象的每个元素应用第一个参数指定的函数,然后返回一个新的可迭代对象。
使用map()函数可以很方便地对可迭代对象进行批量处理,比如转换数据类型、提取关键信息、过滤数据等等。下面我们就通过一些例子来说明如何使用Python的map()函数。
1. 将列表中的每个字符串转换为整数
我们可以使用Python的map()函数将列表中的每个字符串都转换为整数。如下所示:
lst = ['1', '2', '3'] new_lst = list(map(int, lst)) print(new_lst)
输出结果为:[1, 2, 3]
2. 提取字典中的所有姓名
我们可以使用Python的map()函数提取字典中的所有姓名。如下所示:
d = [{'name': 'Tom', 'age': 18}, {'name': 'Jerry', 'age': 20}]
names = list(map(lambda x: x['name'], d))
print(names)
输出结果为:['Tom', 'Jerry']
3. 将列表中的所有元素都乘以2
我们可以使用Python的map()函数将列表中的所有元素都乘以2。如下所示:
lst = [1, 2, 3] new_lst = list(map(lambda x: x*2, lst)) print(new_lst)
输出结果为:[2, 4, 6]
4. 将列表中的所有字符串转换为大写
我们可以使用Python的map()函数将列表中的所有字符串都转换为大写。如下所示:
lst = ['hello', 'world'] new_lst = list(map(str.upper, lst)) print(new_lst)
输出结果为:['HELLO', 'WORLD']
5. 将列表中的所有偶数元素都加上10
我们可以使用Python的map()函数将列表中的所有偶数元素都加上10。如下所示:
lst = [1, 2, 3, 4, 5, 6] new_lst = list(map(lambda x: x+10 if x%2==0 else x, lst)) print(new_lst)
输出结果为:[1, 12, 3, 14, 5, 16]
总之,Python的map()函数非常灵活和强大,可以帮助我们完成很多数据处理工作。既然Python支持函数式编程,我们就应该更加注重map()函数的使用,这样才能发挥Python的最大威力。
