[Python-ideas] data structures should have an .any() method

Matteo Dell'Amico matteodellamico at gmail.com
Fri Sep 4 14:01:28 CEST 2009


Nick Coghlan ha scritto:

> This and other responses miss part of Stefan's complaint: that creating
> an iterator (which isn't always cheap) only to throw it away almost
> immediately may be a somewhat wasteful operation.

It's not particularly wasteful for the built-in data structures, though.
It seems to me that the cases where the performance of next(iter(obj)) 
would be an actual issue are quite rare.

> The shorthand expression above also suffers from the obscurity that
> Stefan was complaining about - there is very little to hint that
> "next(iter(obj))" means "get an arbitrary object out of a container".
> The StopIteration exception this approach will throw for an empty
> container is also rather unhelpful.

Why? next(iter(obj)) means, pretty explicitly to me, "iterate on obj and 
give me one element".

matteo



More information about the Python-ideas mailing list