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

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()函数只会压缩两个或以上的同类型可迭代对象中最短的那个项目数。