Python中的zip()函数-并行迭代多个序列的方法
发布时间:2023-06-29 06:44:34
在Python中,zip()函数是一个非常有用的函数,它可以用来并行迭代多个序列,将对应位置的元素打包成一个元组,并返回一个由这些元组组成的新序列。
zip()函数的语法如下:
zip([iterable1 [, iterable2 [...]]])
其中,iterable1、iterable2等是可迭代的序列,它们可以是列表、元组、字符串或其他可迭代对象。
下面是一些使用zip()函数的例子:
1. 并行迭代两个列表
>>> names = ['Alice', 'Bob', 'Charlie'] >>> ages = [25, 32, 18] >>> for name, age in zip(names, ages): ... print(name, age) ... Alice 25 Bob 32 Charlie 18
2. 并行迭代三个序列
>>> names = ['Alice', 'Bob', 'Charlie'] >>> ages = [25, 32, 18] >>> scores = [90, 85, 95] >>> for name, age, score in zip(names, ages, scores): ... print(name, age, score) ... Alice 25 90 Bob 32 85 Charlie 18 95
3. zip()函数返回的是一个可迭代对象,我们可以使用list()函数将其转换为列表。
>>> names = ['Alice', 'Bob', 'Charlie']
>>> ages = [25, 32, 18]
>>> zipped = zip(names, ages)
>>> print(list(zipped))
[('Alice', 25), ('Bob', 32), ('Charlie', 18)]
4. 当输入的序列长度不一致时,zip()函数会以最短的序列长度为准。
>>> names = ['Alice', 'Bob', 'Charlie']
>>> ages = [25, 32]
>>> zipped = zip(names, ages)
>>> print(list(zipped))
[('Alice', 25), ('Bob', 32)]
总结来说,zip()函数是一个非常有用的函数,可以方便地实现并行迭代多个序列。它可以在循环中同时访问多个序列的对应元素,简化代码的编写。
