gpt4 book ai didi

python - 向 xrange() 添加任意元素?

转载 作者:行者123 更新时间:2023-11-28 19:33:57 28 4
gpt4 key购买 nike

在 Python 中,迭代时使用 xrange() 而不是 range 更节省内存。

我遇到的问题是我想遍历一个大列表——因此我需要使用 xrange() 然后我想检查任意元素。

使用 range(),很简单:x = range(...) + [任意元素]

但是对于 xrange(),似乎没有比这更干净的解决方案了:

for i in xrange(...):
if foo(i):
...
if foo(arbitrary element):
...

对于更清洁的解决方案有什么建议吗?有没有办法将任意元素“附加”到生成器?

最佳答案

itertools.chain允许您从多个可迭代对象创建一个组合迭代器而无需连接它们(因此没有昂贵的临时对象):

from itertools import chain

# Must wrap arbitrary element in one-element tuple (or list)
for i in chain(xrange(...), (arbitrary_element,)):
if foo(i):
...

关于python - 向 xrange() 添加任意元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39278424/

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