首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >itertools.cycle().next()?

itertools.cycle().next()?
EN

Stack Overflow用户
提问于 2011-03-09 04:00:51
回答 2查看 28.7K关注 0票数 46

我在Python2.6.6中使用的是itertools.cycle().next()方法,但是现在我更新到了3.2版本,我注意到itertools.cycle()对象没有next()方法。

我用它在Spinner类的spin()方法中循环一个字符串。因此,如果我们循环元组代码,它将打印:|/-\|/-|、< ('|', '/', '-', '\\', '|', '/', '-') >d14等等...

我搜索了Python 3.0,3.1和3.2的发行说明,没有注意到这方面的任何变化。当这种情况发生变化的时候?有没有什么简单的替代方案可以实现和以前一样的功能?

提前谢谢你。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-03-09 04:04:52

在python 3中删除了iter.next()。请改用next(iter)。因此在您示例中,将itertools.cycle().next()更改为next(itertools.cycle())

有一个good example here以及其他各种移植到Python3的技巧。本文还比较了Python2.x和Python3.x中的各种其他next()习惯用法

票数 70
EN

Stack Overflow用户

发布于 2011-03-09 04:02:30

在Python3.x中,迭代器不再有it.next()。请使用next(it),它也适用于Python2.6或更高版本。在内部,这将在Python2.x中调用it.next(),在Python3.x中调用it.__next__()

票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5237611

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档