我有一个名为" last"的迭代器列表,每个迭代器保存5个值:
last =
[<itertools.islice at 0x10bd29940>,
<itertools.islice at 0x10cc914c8>,
<itertools.islice at 0x10b94f7e0>]
每个系列索引(下面)也包含5个日期,我想在&#34; last&#34;中迭代每个迭代器。完全转到下一个。 (对于每个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中有什么东西吗?)
答案 0 :(得分:0)
没有数据,预期输出,很难猜测
但是试试看:(zip
对&#34;并行&#34;对迭代器的操作很有用)
last = [range(1000,6000,1000), range(2000,7000,1000), range(3000,8000,1000)]
series =[range(1,6,1), range(2,7,1), range(3,8,1)]
[[*zip(srs, map(lambda x: (x - 100) / 100, ls))] for srs, ls in zip(series, last)]
[[(1, 9.0), (2, 19.0), (3, 29.0), (4, 39.0), (5, 49.0)],
[(2, 19.0), (3, 29.0), (4, 39.0), (5, 49.0), (6, 59.0)],
[(3, 29.0), (4, 39.0), (5, 49.0), (6, 59.0), (7, 69.0)]]