Python的chain()函数可以用来组合多个迭代器,他的作用就是把一组迭代器串联起来,形成一个更大的迭代器。
语法
chain()函数的语法如下:
chain(iter1, iter2, iter3, ...)
其中,iter1, iter2, iter3等都是可迭代对象。
参数
chain()函数接受一个或多个可迭代对象作为参数,并返回一个由这些可迭代对象的元素组成的迭代器。
返回值
返回一个迭代器,可迭代对象中所有的元素会被依次输出。
示例1
使用chain()函数可以轻松地将多个迭代器组合在一起,以便进行迭代。下面是一个简单的示例代码:
from itertools import chain
nums1 = [1, 2, 3, 4]
nums2 = [5, 6, 7, 8, 9]
nums3 = [10, 11, 12]
nums = chain(nums1, nums2, nums3)
for num in nums:
print(num, end=' ')
输出结果为:
1 2 3 4 5 6 7 8 9 10 11 12
示例2
同时,我们也可以用chain()函数来进行迭代器的拼接操作。下面的示例代码展示了如何使用chain()函数将两个生成器拼接起来:
from itertools import chain
def gen1():
for i in range(1, 4):
yield i
def gen2():
for i in range(4, 7):
yield i
gen = chain(gen1(), gen2())
for num in gen:
print(num, end=' ')
输出结果为:
1 2 3 4 5 6
从以上示例代码可以看出,使用chain()函数可以轻松地将多个迭代器拼接起来,以便进行逐个访问。通过这种方式,我们可以实现对多个序列的一次性遍历,从而大大提升了迭代的效率。