gpt4 book ai didi

python - 反转 `pairwise` 生成器

转载 作者:太空狗 更新时间:2023-10-30 01:51:26 25 4
gpt4 key购买 nike

我有一个类似于 itertools 的 pairwise 配方的生成器,它生成 (s0,s1), (s1,s2), (s2, s3)...。我想从中创建另一个生成器,生成原始序列 s0, s1, s2, s3,...

from itertools import *

def pairwise(iterable):
a, b = tee(iterable)
next(b, None)
return izip(a, b)

a = [1,2,3,4]

for item in unpair(pairwise(a)):
print item # should print 1,2,3,4

如何在不求助于列表的情况下将unpair 编写为生成器?

最佳答案

也许:

def unpair(iterable):
p = iter(iterable)
return chain(next(p, []), (x[1] for x in p))

关于python - 反转 `pairwise` 生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19563989/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com