python中不同长度的一维列表合并成二维列表
时间: 2023-10-10 13:05:24 浏览: 174
可以使用zip函数和*运算符将不同长度的一维列表合并成二维列表。代码示例如下:
```python
list1 = [1, 2, 3]
list2 = ['a', 'b']
list3 = [True, False, True, False]
# 使用zip和*运算符将不同长度的一维列表合并成二维列表
two_dimensional_list = list(zip(list1, list2, list3))
print(two_dimensional_list)
```
输出结果为:
```
[(1, 'a', True), (2, 'b', False)]
```
注意,由于list3的长度比list1和list2长,因此在合并时只取前两个列表的长度。如果想要将所有列表中的元素都合并到二维列表中,可以使用itertools.zip_longest函数。代码示例如下:
```python
import itertools
list1 = [1, 2, 3]
list2 = ['a', 'b']
list3 = [True, False, True, False]
# 使用itertools.zip_longest函数将不同长度的一维列表合并成二维列表
two_dimensional_list = list(itertools.zip_longest(list1, list2, list3))
print(two_dimensional_list)
```
输出结果为:
```
[(1, 'a', True), (2, 'b', False), (3, None, True), (None, None, False)]
```
注意,由于list1和list2的长度比list3短,因此在合并时使用了None填充缺失的元素。
阅读全文