isinstance(False, int)

Terry Reedy tjreedy at udel.edu
Fri Mar 5 16:27:56 EST 2010


On 3/5/2010 1:30 PM, MRAB wrote:
> mk wrote:
>> >>> isinstance(False, int)
>> True
>> >>>
>> >>> isinstance(True, int)
>> True
>>
>> Huh?
>>
>> >>>
>> >>> issubclass(bool, int)
>> True
>>
>> Huh?!
>>
> Python didn't have Booleans originally, 0 and 1 were used instead. When
> bool was introduced it was made a subclass of int so that existing code
> wouldn't break.

And because it is useful to make it so.

Terry Jan Reedy





More information about the Python-list mailing list