first of not None

Bruno Desthuilliers bruno.42.desthuilliers at websiteburo.invalid
Thu Oct 9 08:40:11 EDT 2008


Serge Matveenko a écrit :
> Hello, everybody!
> 
> Could someone help me with coding this thing?
> 
> I need to put in the var property of the first object from the list
> that is not None. Somth like:
> 
> foo = first_of([any, beny, riki,]).name
> 
> Dont want to ugly if-cascade:
> 
> foo = any.name if name is not None else beny.name if beny is not None \
> else riki.name if riki is not None
> 

def not_none(obj):
     return obj is not None

def first_of(seq, predicate=not_none, default=None):
     for obj in seq:
         if predicate(obj):
             return obj
     else:
         return default




More information about the Python-list mailing list