嗯,我正在使用itertools.cycle().next()
方法与Python 2.6.6,但现在我更新到3.2我注意到itertools.cycle()
对象没有方法next()
.
我用它来循环一个字符串spin()
的方法Spinner
班级。所以如果我们循环元组('|', '/', '-', '\\', '|', '/', '-')
,它会打印:|
, /
, -
, \
, |
, /
, -
, |
, /
等等...
我搜索了 Python 3.0、3.1 和 3.2 的发行说明,没有注意到这方面有任何变化。这一切什么时候改变了?是否有任何简单的替代方案可以实现与以前相同的功能?
先感谢您。
iter.next()
在 python 3 中被删除。使用next(iter)
反而。所以在你的例子中改变itertools.cycle().next()
to next(itertools.cycle())
有一个这里是一个很好的例子 http://www.diveintopython3.net/porting-code-to-python-3-with-2to3.html#next以及各种其他移植到 python 3 的技巧。它还比较了其他各种next()
python 2.x 与 python 3.x 中的习语
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)