3 ms·
You'll find that they are integers, though: >>> isinstance(True, int) True >>> bool.__mro__ (<type 'bool'>, <type 'int'>, <type 'object'>) Although they ar
by peter-fogg 14y ago
You'll find that they are integers, though:
>>> isinstance(True, int)
True
>>> bool.__mro__
(<type 'bool'>, <type 'int'>, <type 'object'>)
Although they aren't literally the same object, 1 == True does evaluate to True.
- slurgfest 14y agoDownvoting notwithstanding, the statement that 1 and 0 ARE True and False is flat false. It's not even kind of true: True is not 1 and False is not 0, the type of True and False is not int, and the established convention for comparing to these values is to use 'is' if you are not using the vaguer 'if cond' or 'if not cond'.
- kzrdude 14y agoYou are missing the point. The original code was making detours instead of using True as the list index (which you can do).