[Python-Dev] bool(iter([])) changed between 2.3 and 2.4
Guido van Rossum
guido at python.org
Thu Sep 22 05:14:12 CEST 2005
On 9/21/05, Raymond Hettinger <raymond.hettinger at verizon.net> wrote:
> [Guido van Rossum]
> > Could you at least admit that this was an oversight and not try to
> > pretend it was intentional breakage?
>
> Absolutely. I completely missed this one.
Thanks; spoken like a man.
I strongly feel that this needs to be corrected in 2.5. Iterators
should have neither __len__ nor __nonzero__. I see mostly agreement
that this is a misfeature. We don't really want to start writing code
like this:
while it:
x = it.next()
...process x...
when we can already write it like this:
for x in it:
...process x...
do we?
Keeping a special API to allow a more efficient implementation of
__reversed__ is fine.
--
--Guido van Rossum (home page: http://www.python.org/~guido/)
More information about the Python-Dev
mailing list