怎么在Python中连接多个迭代器?Python对多个迭代器连接方法

Python迭代的学习中 , 我们知道它就像是一种操作序列元素的方法 , 通常我们会说一个方法进行迭代 , 那么为了提高效率 , 是否可以进一步的延伸 , 进行多个迭代器的连接操作 。这种多个连接的方法已经被验证可行 , 一共有两种方法可以实现 , 下面我们就这两种方法分别进行介绍 , 一起看看对多个迭代器的连接吧 。

怎么在Python中连接多个迭代器?Python对多个迭代器连接方法

文章插图
1、chain方法
如果需要在对个文件中输入一个系统日志的时候 , 那么需要先找到一个包含了error的日志 , 这样才能方便下一步的分析 , 在操作的时候 , 有时候并不需要同时对多个迭代器进行读取 , 而是想通过一种方法去连接多个迭代器的内容 , 这个时候我们就可以使用itertools中的一个chain方法 , 它可以对多个迭代器接收 , 并且当我们进行遍历的操作时 , 它可以连接多个迭代器的内容 , 这样方便我们无缝衔接迭代器 。举个例子:
from itertools import chainnum = [2, 4, 8]chars = ['aa', 'bb', 'cc']for i in chain(num, chars):print(i)这样在输出的时候 , 就会将num和chars中的内容一起输出 , 在程序的运行中就相当于只执行了一个迭代器 。
【怎么在Python中连接多个迭代器?Python对多个迭代器连接方法】2、创建新的临时list
第一种方法也可以用下面这种方式表示 , 代码如下:
for i in num+ chars:print(i)直接让两个迭代器使用加号连接 , 这种方式也可以让程序只执行一次迭代器 , 在内部执行的时候 , 实际上是先创建了一个临时的list,list当中存储的就是num和chars中的数据 , 我们所谓的迭代 , 就是一个新的list,它会重新开放一个内存 , 用来存储这些新的数控 , 这样会花费一些时间 , 也就是说我们迭代的其实是这个新的list 。这带来的结果是我们额外开辟了一段内存 , 并且花费了一些时间 。
以上就是怎么在Python中连接多个迭代器?Python对多个迭代器连接方法 , 学完文章可以发现 , chain的方法相对来说更有优势 , 大家在连接时可以优先选择这种方法 。

    推荐阅读