这听起来有点疯狂,但我有一个带有N = 10**409
元素的迭代器。有没有办法从“列表”的末尾获取项目?也就是说,当我打电话给next(iterator)
时,它会给我最后想要做的事情,但要得到我想要做的第一件事情,我需要打next(iterator)
N次电话。
如果我做类似list(iterator).reverse()
的事情,它当然会因为内存不足而崩溃
编辑:迭代器如何与简化示例一起使用:
# prints all possible alphabetical character combinations that can fit in a tweet
chars = "abcdefghijklmnopqrstuvwxyz "
cproduct = itertools.product(chars,repeat=250)
for subset in cproduct:
print(''.join(subset))
# will start with `aaaaaaaa...aaa`
# but I want it to start with `zzz...zzz`
对于某些问题,可以反向计算元素。对于您提供的示例,可以简单地反转您正在获取产品的项目
在本例中,我们在获取产品以获得“反向迭代器”之前反转符号:
相关问题 更多 >
编程相关推荐