python map()
时间: 2024-12-27 14:25:29 浏览: 9
### Python `map()` 函数详解
`map()` 是 Python 的内置函数之一,用于将指定的函数应用于可迭代对象中的每一项,并返回一个新的迭代器[^1]。
#### 基本语法
```python
map(function, iterable, ...)
```
- `function`: 对每个元素应用的函数。
- `iterable`: 可以是一个或多个可迭代对象(列表、元组等)。
该函数会创建一个映射器(map object),它是一个迭代器,可以通过将其转换为列表或其他序列来查看结果。
#### 示例代码
##### 单一参数示例
当只需要处理单个列表时:
```python
def square(n):
return n * n
numbers = [1, 2, 3, 4]
squared_numbers_iterator = map(square, numbers)
# 将迭代器转成列表显示出来
print(list(squared_numbers_iterator))
# 输出: [1, 4, 9, 16]
```
##### 多重参数示例
如果提供了多个可迭代对象,则这些输入会被一起传递给函数:
```python
def power(base, exponent):
return base ** exponent
bases = [2, 3, 4]
exponents = [5, 2, 3]
powers_iterator = map(power, bases, exponents)
print(list(powers_iterator))
# 输出: [32, 9, 64]
```
#### 使用 lambda 表达式简化定义
对于简单的操作可以直接使用匿名函数(lambda):
```python
words = ['hello', 'world']
uppercased_words = list(map(lambda word: word.upper(), words))
print(uppercased_words)
# 输出: ['HELLO', 'WORLD']
```
阅读全文