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循环遍历合并的元组。
