returning True, False or None
Mick Krippendorf
mad.mick at gmx.de
Fri Feb 4 21:20:54 EST 2005
Daniel Bickett wrote:
>
> >>> def boolhunt( items ):
> ... falseExists = False
> ... for item in items:
> ... if item is True:
> ... return True
> ... elif item is False and not falseExists:
> ... falseExists = True
> ... if falseExists:
> ... return False
Or even shorter:
>>> def boolhunt(items):
... result = None
... for item in items:
... if item:
... return True
... elif result is None and item is False:
... result = False
... return result
Or like the Melmacians would do it:
>>> def boolgen(items):
... result = None
... for item in items:
... if result:
... raise StopIteration
... elif item is not None:
... result = item
... yield result
>>> [item for item in boolgen(a_list)][-1]
Mick.
More information about the Python-list
mailing list