Обновление : удалены все дубликаты информации в сообщении Медера
Для пользовательских объектов в Python <3.0 <code>__nonzero__, чтобы изменить способ его оценки. В Python 3.0 это __bool__
( Reference от e-sat)
Важно понимать, что подразумевается под оценкой. Одно из значений заключается в том, что объект явно приводится к типу bool или неявно приводится по своему расположению (в цикле if или while).
Еще одна == оценка. 1 == True, 0 == False, ничто иное не равно через ==.
>>> None==False
False
>>> 1==True
True
>>> 0==False
True
>>> 2==False
False
>>> 2==True
False
Наконец, для is is, только True или False сами по себе.