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

ilya ilya.nikokoshev at gmail.com
Fri Sep 4 15:35:47 CEST 2009

I think dict.popitem() does something close to what the original post wanted.


On Fri, Sep 4, 2009 at 4:17 PM, Nick Coghlan<ncoghlan at gmail.com> wrote:
> Matteo Dell'Amico wrote:
>>> 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".
> Because it overspecifies the semantics of what you're trying to do. It
> just happens that when the requirement is "get me any object in this
> container" the design of Python means that the easiest implementation is
> "get me the first object in this container".
> The expression form then reflects the implementation rather than the
> algorithmic intent.
> That said, this concise way of implementing the desired feature is
> certainly one of the reasons I am -0 on the idea of adding it to the
> standard library.
> Cheers,
> Nick.
> --
> Nick Coghlan   |   ncoghlan at gmail.com   |   Brisbane, Australia
> ---------------------------------------------------------------
> _______________________________________________
> Python-ideas mailing list
> Python-ideas at python.org
> http://mail.python.org/mailman/listinfo/python-ideas

More information about the Python-ideas mailing list