first of not None

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Serge Matveenko

    first of not None

    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


    --
    Serge Matveenko
    mailto:serge@ma tveenko.ru

  • Bruno Desthuilliers

    #2
    Re: first of not None

    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_n one, default=None):
    for obj in seq:
    if predicate(obj):
    return obj
    else:
    return default

    Comment

    Working...