python map便利
时间: 2023-07-13 07:08:50 浏览: 99
`map()` 是 Python 内置函数之一,它可以将一个函数应用于列表或其他可迭代对象中的每个元素,并返回一个新的迭代器对象。这个新的迭代器对象可以被转换成列表或其他类型的序列。
`map()` 的语法如下:
```python
map(function, iterable, ...)
```
其中 `function` 是要应用的函数,`iterable` 是一个或多个序列,可以是列表、元组、集合等。它们可以是等长的,也可以不等长。`map()` 返回一个迭代器对象,可以使用 `list()` 函数将其转换为列表。
下面是一个简单的例子,演示如何使用 `map()` 将一个列表中的每个元素求平方:
```python
numbers = [1, 2, 3, 4, 5]
squares = map(lambda x: x ** 2, numbers)
print(list(squares)) # 输出 [1, 4, 9, 16, 25]
```
在上面的代码中,我们首先定义了一个列表 `numbers`,然后使用 `map()` 函数和一个匿名函数,将每个元素求平方,并将结果存储在新的变量 `squares` 中。最后,我们使用 `list()` 函数将 `squares` 转换为列表,并打印出来。
除了使用匿名函数,我们也可以使用普通函数来传递给 `map()`。例如,下面是一个使用普通函数作为参数的例子:
```python
def double(x):
return x * 2
numbers = [1, 2, 3, 4, 5]
doubles = map(double, numbers)
print(list(doubles)) # 输出 [2, 4, 6, 8, 10]
```
在上面的代码中,我们定义了一个名为 `double()` 的普通函数,并将其作为参数传递给 `map()`。`map()` 将 `double()` 应用于 `numbers` 中的每个元素,并返回一个新的迭代器 `doubles`。最后,我们使用 `list()` 函数将 `doubles` 转换为列表,并打印出来。
希望这能帮助你理解 `map()` 函数的用法。
阅读全文