Python中的循环列表迭代器

user443854:

我需要遍历一个循环列表,每次从最后一次访问的项目开始,可能要多次。

用例是一个连接池。客户端请求连接,迭代器检查指向的连接是否可用并返回,否则循环直到找到可用的连接。

有没有一种精巧的方法可以在Python中做到这一点?

卢卡斯·格拉夫(Lukas Graf):

使用itertools.cycle,这是其确切目的:

from itertools import cycle

lst = ['a', 'b', 'c']

pool = cycle(lst)

for item in pool:
    print item,

输出:

a b c a b c ...

(显然,永远循环)


为了手动推进迭代器并一一拉出迭代器的值,只需调用next(pool)

>>> next(pool)
'a'
>>> next(pool)
'b'

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章