Потому что True - это 1, а False - 0
Так исторически сложилось
https://stackoverflow.com/questions/8169001/why-is-bool-a-subclass-of-int
а почему нет? Собственно в компьютерах и нет такого типа как бул - там только числа. В сишке это видно - там для логических выражений просто нули и единицы используют.
например потому это не очень вписывается в строгую систему типов.
Обсуждают сегодня