[Python-Dev] Getting values stored inside sets (original) (raw)
Amaury Forgeot d'Arc amauryfa at gmail.com
Fri Apr 3 18:07:29 CEST 2009
- Previous message: [Python-Dev] Getting values stored inside sets
- Next message: [Python-Dev] Getting values stored inside sets
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi,
On Fri, Apr 3, 2009 at 17:45, Sebastian Rittau <srittau at jroger.in-berlin.de> wrote:
I am missing a simple way to retrieve the "first" element of any iterable in python that matches a certain condition anyway. Something like this:
def first(iter, cb): for el in iter: if cb(el): return el raise IndexError() Or (shorter, but potentially slower): def first(iter, cb): return [el for el in iter if cb(el)][0] To be used like this: myel = first(myset, lambda el: el == "foobar") This is something I need from time to time and this also seems to solve your problem.
def first(iter, cb): return itertools.ifilter(cb, iter).next()
-- Amaury Forgeot d'Arc
- Previous message: [Python-Dev] Getting values stored inside sets
- Next message: [Python-Dev] Getting values stored inside sets
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]