Duplicar posible:
defining “boolness” of a class in pythonCómo sobrecargar el método __bool__ de Python?
pensé que esto debe imprimir "falso", ¿por qué es la impresión "verdadera"?
>>> class Foo(object):
... def __bool__(self):
... return False
...
>>> f = Foo()
>>> if f:
... print "True"
... else:
... print "False"
...
True
>>>
Dup de [bool primordial() para la clase personalizada] (http://stackoverflow.com/questions/2233786) – outis