1. 简介
map()是 Python 内置的高阶函数,它接收一个函数 f 和一个或多个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。
注意:
(1)map()函数不改变原有的 list,而是返回一个新的 list。
(2)利用map()函数,可以把一个 list 转换为另一个 list,只需要传入转换函数。
- 语法
map(f, list1, list2, ...)
2. 例子
实例1
计算平方数。
def square(x) :
return x ** 2
print(map(square, [1,2,3,4,5]))
输出:[1, 4, 9, 16, 25]
实例2
使用 lambda 匿名函数计算平方数,等价于前一例。
print(map(lambda x: x**2, [1, 2, 3, 4, 5]))
输出:[1, 4, 9, 16, 25]
实例3
提供了两个列表,对相同位置的列表数据进行相加。
print(map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10]))
输出:[3, 7, 11, 15, 19]
实例4
当不传入function时,map()就等同于zip(),将多个列表相同位置的元素归并到一个元组:
print(map(None,[2,4,6],[3,2,1]))
输出:[(2,3),(4,2),(6,1)]
实例5
实用匿名函数lambda返回一个元组,等价于上例。
print(map(lambda x, y:(x + y),[2,4,6],[3,2,1]))
输出:[(2,3),(4,2),(6,1)]
实例6 类型转换
- 将元组转换为list
print(map(int, (1, 2, 3, 4)))
输出:[1, 2, 3, 4]
- 将字符串转换为list
print(map(int,'1234'))
输出:[1, 2, 3, 4]
实例7
提前字典中的key,将结果放在一个list中
print(map(int,{1:2,2:3,3:4,4:5}))
输出:[1, 2, 3, 4]
3. 有用的链接
- https://blog.youkuaiyun.com/quanlingtu1272/article/details/95482253
- https://www.runoob.com/python/python-func-map.html
本文介绍了Python内置的map()函数,它接受一个函数和一个或多个列表,将函数依次应用到列表元素上,返回新的列表。内容包括map()的基本用法、不改变原列表的特点、使用lambda函数的例子,以及与其他函数的比较,如zip()。同时,文章还展示了如何利用map()进行类型转换,如将元组转为list,字符串转为list,以及从字典中提取key到list中。
1万+

被折叠的 条评论
为什么被折叠?



