欢迎访问宙启技术站
智能推送

Python中如何使用zip函数进行List合并?

发布时间:2023-07-01 17:47:01

在Python中,可以使用zip()函数合并两个或多个List。

zip()函数接受多个List作为参数,返回一个包含元组的zip对象。每个元组包含来自不同List的元素,这就是合并的结果。

下面是使用zip()函数进行List合并的几种常见方式:

1. 合并两个List:

list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
result = list(zip(list1, list2))
print(result)

输出:

[(1, 'a'), (2, 'b'), (3, 'c')]

2. 合并多个List:

list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
list3 = [True, False, True]
result = list(zip(list1, list2, list3))
print(result)

输出:

[(1, 'a', True), (2, 'b', False), (3, 'c', True)]

3. 合并长度不同的List:

list1 = [1, 2, 3]
list2 = ['a', 'b']
result = list(zip(list1, list2))
print(result)

输出:

[(1, 'a'), (2, 'b')]

zip()函数将按照最短的List长度进行合并,不足的部分将被忽略。

4. 使用*号操作符解压合并的结果:

list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
result = list(zip(list1, list2))
unzipped = list(zip(*result))
print(unzipped)

输出:

[(1, 2, 3), ('a', 'b', 'c')]

使用*号操作符可以解压合并的结果,将合并前的List重新分解为多个List。

5. 使用for循环遍历合并的结果:

list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
result = list(zip(list1, list2))
for item in result:
    print(item)

输出:

(1, 'a')
(2, 'b')
(3, 'c')

可以使用for循环遍历合并的结果,对每个元组进行操作。

总结:

zip()函数可以方便地合并两个或多个List。如果输入的List长度不同,合并的结果将按照最短的List长度进行。可以使用*号操作符解压合并的结果,或者用for循环遍历合并的元组。