【发布时间】:2017-10-21 20:57:20
【问题描述】:
我有一个名为“last”的迭代器列表,每个迭代器包含 5 个值:
last =
[<itertools.islice at 0x10bd29940>,
<itertools.islice at 0x10cc914c8>,
<itertools.islice at 0x10b94f7e0>]
每个系列索引(如下)也包含 5 个日期,我想在继续下一个之前完全遍历“最后一个”中的每个迭代器。 (对于每个 series.index ,遍历 5 次,然后当它移动到下一个 series.index 时,循环遍历下一个迭代器 5 次,等等。
到目前为止我已经尝试过;
for date in series.index:
net = (next(last) - 100) / 100
for date in series.index:
net = ([next(n) for n in last] - 100) / 100
不确定如何解决这个问题(itertools 中有什么东西吗?)
【问题讨论】:
-
尝试使用
itertools.chain.from_iterable链接迭代器 -
for it in last: for x in it...? -
你到底想在这里实现什么?什么是“下一个”系列索引 - 什么是系列索引?
-
[[x for x in it] for it in last] 创建一个列表,我需要一次取一个,例如 next(x) 用于 series.index 中的 ea 迭代
-
不是让它成为一个 list-comp 而是让它成为一个 gen-exp?