Mailing List Archive

Non int Boolean
If someone really really wants a non-int Boolean, it is easy to implement. 5 or 6 lines, depending on whether you count the import statement:

from enum import Enum

class MyBool(Enum):
TRUE = 42
FALSE = 54

def __bool__(self):
return self == MyBool.TRUE

# testing
mytrue = MyBool.TRUE
print(int(mytrue)) #this fails
except TypeError as te:

asbool = bool(mytrue)
if mytrue:

myfalse = MyBool.FALSE
if myfalse:

I would never use such a thing, and I would be annoyed if I can across code that did. As has been said (beaten to death?) Python has an existing well-understood boolean type.