map 替代for 循环
时间: 2023-12-31 13:43:51 浏览: 66
ES6教程之for循环和Map,Set用法分析
在很多情况下,使用 `map` 函数可以替代 `for` 循环,从而实现更为简洁的代码。
例如,假设有一个列表 `lst`,我们想要对其中的每个元素进行平方操作,并将结果存储到一个新的列表 `squared_lst` 中,可以使用 `for` 循环来实现:
```python
lst = [1, 2, 3, 4, 5]
squared_lst = []
for num in lst:
squared_lst.append(num ** 2)
```
使用 `map` 函数可以将上述代码简化为一行:
```python
lst = [1, 2, 3, 4, 5]
squared_lst = list(map(lambda x: x ** 2, lst))
```
这里,`map` 函数接受一个函数和一个可迭代对象作为参数,它会将可迭代对象中的每个元素依次传入到函数中,并返回一个新的可迭代对象,其中每个元素都是函数作用于原可迭代对象中对应元素的结果。在这里,我们使用了匿名函数 `lambda x: x ** 2` 来对每个元素进行平方操作。最后,我们将 `map` 返回的可迭代对象转换为列表 `squared_lst`。
阅读全文