На днях узнал об одной интересной особенности типа bool в python:
»> b = True»> b + 12
Поведение достатчно логичное, если учесть, что:
»» isinstance(b, int)True
Всё дело в том, что тип bool - это всего-лишь синтаксический сахар и наследник от типа int**,** который, для удобства использования, может иметь всего два значения - 0 (False) и 1 (True). Пример выше врядли встретится в коде, но зать об этом стоит на случай если где-то случайно поменяется тип переменной с bool на int или наоборот.