On Fri, Dec 27, 2013 at 07:16:22PM +0000, Oscar Benjamin wrote: > The next method of iterators was renamed __next__ in Python 3. So if you > change it to self.col.__next__() it will work in Python 3. Neither of those > is really correct though. The correct method is to call the next built-in: > next(self.col) > That will work under Python 2 and 3 and is the recommended way in both > versions.
Not quite. There is no next() function prior to Python 2.6. In 2.5 you have to call self.col.next(), which was deemed to be a mistake and changed in 2.6. A general word of advice: never call "dunder" (Double UNDERscore) methods like __next__ directly. There are exceptions to that rule, but it generally applies. -- Steven _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor