python 基础教程之Map使用方法

时间:2022-10-06 07:29:51

Python Map

Map会将一个函数映射到一个输入列表的所有元素上。Map的规范为:map(function_to_apply, list_of_inputs)
大多数时候,我们需要将列表中的所有元素一个个传递给一个函数,并收集输出。例如:

?
1
2
3
4
items = [1, 2, 3, 4, 5]
squared = []
for i in items:
  squared.append(i**2)

使用Map的话,可以让我们以一种更加简便的方法解决这种问题。

?
1
2
items = [1, 2, 3, 4, 5]
squared = list(map(lambda x: x**2, items))

大多数时候,我们会使用python中的匿名函数lambda来配合map。不仅对于一列表的输入,同时我们也可以用于一列表的函数。

?
1
2
3
4
5
6
7
8
def multiply(x):
  return (x*x)
def add(x):
  return (x+x)
funcs = [multiply, add]
for i in range(5):
  value = list(map(lambda x: x(i), funcs))
  print(value)

以上程序输出为:

?
1
2
3
4
5
6
# Output:
# [0, 0]
# [1, 2]
# [4, 4]
# [9, 6]
# [16, 8]

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!