[me]
Why not write a short, fast get_first() function for your utils directory and 
be done with it?
That could work with sets, mappings, generators, and other containers and 
iterators.
No need to fatten the set/frozenset API for something so trivial and so rarely 
needed.

Forgot to post the code. It is short, fast, and easy. It is explicit about handing the case with an empty input. And it is specific about which value it returns (always the first iterated value; not an arbitrary one). There's no guessing about what it does. It gets the job done.

def first(iterable):
   'Return the first value from a container or iterable.  If empty, raises 
LookupError'
   for value in iterable:
       return value
   raise LookupError('no first value; iterable is empty')

If desired, it is not hard to change to the last time to return a default value 
or some other exception.


Raymond



_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to