Почему bool является подклассом int?

При сохранении bool в memcached через python-memcached я заметил, что он возвращается как целое число. Проверка кода библиотеки показала мне, что есть место, гдеisinstance(val, int) проверяется, чтобы пометить значение как целое число.

Итак, я протестировал его в оболочке python и заметил следующее:

>>> isinstance(True, int)
True
>>> issubclass(bool, int)
True

Но почему именноbool подклассint?

Это имеет смысл, потому что логическое значение в основном представляет собой int, которое может принимать только два значения, но ему нужно гораздо меньше операций / места, чем фактическое целое число (без арифметики, только один бит дискового пространства) ....

Ответы на вопрос(3)

Ваш ответ на вопрос