[Python-3000] Fwd: Re: PEP: rename it.next() to it.__next__(), add a next() built-in
Raymond Hettinger
python at rcn.com
Tue Mar 6 00:46:57 CET 2007
[Josiah Carlson]
>> I have written methods named 'next' which have *nothing* to do
>> with the iterator protocol.
[Greg]
>That would be another reason for renaming .next() to
>.__next__() -- to avoid intruding on the user's
>namespace.
Another read is that iterators should be separate
objects so that the namespace is coherent (with
__iter__, next, and whatnot all being iterator
related). Who is going to create a custon iterator that
defines BOTH __next__ and next(), that would be less
than ideal and not something we want to encourage.
Raymond
More information about the Python-3000
mailing list