Python中的Zip()函数应用实例教程
发布时间:2023-05-28 07:25:22
Zip()函数是Python中内置的一个函数,它可以接受两个或以上的可迭代对象作为参数,然后将这些可迭代对象中的元素按照顺序一一压缩成元组,最终返回一个由这些元组组成的迭代器。
下面是Zip()函数的基本语法:
zip([iterable, ...])
其中,iterable表示可迭代对象,可以是列表、元组、字符串、集合、字典和生成器等。Zip()函数将把这些可迭代对象的元素一一对应地压缩成元组。
接下来,我们来看一些Zip()函数的应用实例。
1. 合并两个列表
我们可以使用Zip()函数将两个列表中的元素按照顺序一一对应地压缩成元组,然后将这些元组组成一个新的列表。
下面是一个例子:
a = [1, 2, 3] b = [4, 5, 6] c = list(zip(a, b)) print(c)
输出结果为:
[(1, 4), (2, 5), (3, 6)]
2. 获取字典的键值对
我们可以使用Zip()函数将字典的键和值分别压缩成两个列表,然后再对这些列表进行遍历操作。
下面是一个例子:
d = {'a': 1, 'b': 2, 'c': 3}
keys = list(d.keys())
values = list(d.values())
for k, v in zip(keys, values):
print('key:', k, ', value:', v)
输出结果为:
key: a , value: 1 key: b , value: 2 key: c , value: 3
3. 将多个列表中的元素两两组合
我们可以使用Zip()函数将多个列表中的元素两两组合起来,形成一个新的列表。
下面是一个例子:
a = [1, 2, 3] b = ['a', 'b', 'c'] c = [True, False, True] d = list(zip(a, b, c)) print(d)
输出结果为:
[(1, 'a', True), (2, 'b', False), (3, 'c', True)]
4. 解压元组
我们可以使用Zip()函数将压缩后的元组解压成原来的几个列表。
下面是一个例子:
e = [(1, 'a', True), (2, 'b', False), (3, 'c', True)] f, g, h = zip(*e) print(f) print(g) print(h)
输出结果为:
(1, 2, 3)
('a', 'b', 'c')
(True, False, True)
5. 字典推导式
我们可以使用Zip()函数将两个列表中的元素按照顺序一一对应地压缩成元组,然后使用字典推导式将这些元组转换成字典。
下面是一个例子:
a = ['a', 'b', 'c']
b = [1, 2, 3]
d = {k: v for k, v in zip(a, b)}
print(d)
输出结果为:
{'a': 1, 'b': 2, 'c': 3}
总之,Zip()函数可以很方便地处理许多列表、字典等数据结构。需要注意的是,Zip()函数只会压缩两个或以上的同类型可迭代对象中最短的那个项目数。
