Python中如何使用zip()函数?
发布时间:2023-06-12 17:47:27
Python中的zip()函数是Python内置函数之一,它允许将多个可迭代对象(列表、元组、字典等)组合成一个元组对的列表,其中每个元组对将来自每个可迭代对象的相应元素对应。
zip()函数的语法为:zip(iterable1[, iterable2,.... iterableN]),其中iterable1, iterable2, iterableN是多个可迭代对象。
以下是使用zip()函数的一些示例:
1. 将两个列表组合为一个元组对的列表:
a = [1, 2, 3] b = ['a', 'b', 'c'] c = zip(a, b) print(list(c)) # 输出:[(1, 'a'), (2, 'b'), (3, 'c')]
2. 将三个列表组合为一个元组对的列表:
a = [1, 2, 3] b = ['a', 'b', 'c'] c = ['X', 'Y', 'Z'] d = zip(a, b, c) print(list(d)) # 输出:[(1, 'a', 'X'), (2, 'b', 'Y'), (3, 'c', 'Z')]
3. 将两个字典组合为一个元组对的列表:
a = {'a': 1, 'b': 2, 'c': 3}
b = {'X': 4, 'Y': 5, 'Z': 6}
c = zip(a, b)
print(list(c))
# 输出:[('a', 'X'), ('b', 'Y'), ('c', 'Z')]
4. 反转键和值:
a = {'a': 1, 'b': 2, 'c': 3}
b = zip(a.values(), a.keys())
print(dict(b))
# 输出:{1: 'a', 2: 'b', 3: 'c'}
5. 如果两个可迭代对象的长度不同,则zip()函数将使用最短的序列作为其停止点:
a = [1, 2, 3] b = ['a', 'b'] c = zip(a, b) print(list(c)) # 输出:[(1, 'a'), (2, 'b')]
总之,zip()函数是一个强大而有用的工具,它可以使我们能够将多个可迭代对象组合起来并进行操作,从而使我们的代码更加简洁和高效。
