ywa*_*wat 13 python iterator list python-3.x
我希望以有效的方式连接两个迭代器.
假设我们有两个迭代器(在Python3中)
l1 = range(10) # iterator over 0, 1, ..., 9
l2 = range(10, 20) # iterator over 10, 11, ..., 19
Run Code Online (Sandbox Code Playgroud)
如果我们将它们转换为列表,就很容易连接起来
y = list(l1) + list(l2) # 0, 1, ,..., 19
Run Code Online (Sandbox Code Playgroud)
但是,这可能效率不高.
我想做点什么
y_iter = l1 + l2 # this does not work
Run Code Online (Sandbox Code Playgroud)
在Python3中执行此操作的好方法是什么?
Dan*_* D. 28
用途itertools.chain:
from itertools import chain
y_iter = chain(l1, l2)
Run Code Online (Sandbox Code Playgroud)
它产生所有物品l1和它们的所有物品l2.有效地连接所产生项目的顺序.在这个过程中它消耗两者.
| 归档时间: |
|
| 查看次数: |
8367 次 |
| 最近记录: |