合并多个可迭代对象
itertools 是 python 的迭代器模块,它提供的工具相当高效且节省内存。
其中的 chain 迭代器能够将多个可迭代对象合并成一个更长的可迭代对象。
具体用法如下:
from itertools import chain
my_list = ['foo', 'bar']
numbers1 = range(5)
numbers2 = range(10, 15)
new_list = list(chain(my_list, numbers1, numbers2))
下面是 chain 的实现:
def chain(*iterables):
# chain('ABC', 'DEF') --> A B C D E F
for it in iterables:
for element in it:
yield element