map Python · 内置函数
`map` 对一个可迭代对象中的每个元素应用同一个函数,返回结果的迭代器。就像流水线上的机器,每个产品经过机器时都被加工一次,最后得到加工后的产品。
怎么用
map(函数, 可迭代对象)
小例子
数字 = [1, 2, 3, 4] 平方 = map(lambda x: x * x, 数字) print(list(平方))
运行结果
[1, 4, 9, 16]
对比:手动写循环
数字 = [1, 2, 3, 4]
平方 = []
for x in 数字:
平方.append(x * x)
print(平方)
用 `map` 更简洁,而且适合函数式编程。常见使用场景
1. 对列表每个元素进行转换:
字符串列表 = ["1", "2", "3"]
整数列表 = list(map(int, 字符串列表))
print(整数列表) # [1, 2, 3]
2. 多个可迭代对象同时传入:
def 相加(a, b):
return a + b
结果 = list(map(相加, [1,2,3], [4,5,6]))
print(结果) # [5, 7, 9]
3. 与 lambda 配合,避免写循环。
提醒:- `map` 返回的是迭代器,需要 `list()` 或循环来展开。 - 函数可以是内置函数、自定义函数或 lambda。 - 如果函数需要多个参数,可以传入多个可迭代对象,长度不一致时以最短为准。
官方文档:https://docs.python.org/zh-cn/3/library/functions.html#map
在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← Python全部词条