有一嵌套列表[[1, 2, 3], [4, 5, 6], [7, 8, 9]],将该列表中子列表进行展开,输入展开后无嵌套列表。(给出具体展开代码以及结果,多种方法有加分)
时间: 2024-10-16 12:10:13 浏览: 9
Python嵌套列表转一维的方法(压平嵌套列表)
你可以使用Python的列表推导式、内置函数`itertools.chain()`或者是简单的循环来展开这个嵌套列表。以下是三种方法的示例代码和结果:
**方法一:列表推导式**
```python
nested_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
expanded_list = [item for sublist in nested_list for item in sublist]
print(expanded_list) # 输出:[1, 2, 3, 4, 5, 6, 7, 8, 9]
```
**方法二:`itertools.chain()` 函数**
```python
import itertools
nested_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
expanded_list = list(itertools.chain(*nested_list))
print(expanded_list) # 同样输出:[1, 2, 3, 4, 5, 6, 7, 8, 9]
```
**方法三:简单循环**
```python
nested_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
expanded_list = []
for sublist in nested_list:
expanded_list.extend(sublist)
print(expanded_list) # 输出:[1, 2, 3, 4, 5, 6, 7, 8, 9]
```
在这三种方法中,第一种是最简洁的,也是最推荐的,因为它结合了两个基本的操作:嵌套迭代和元素的逐个取出。
阅读全文