Booleans
These represent the truth values False and True. The two objects
representing the values False and True are the only Boolean
objects. The Boolean type is a subtype of plain integers, and Boolean
values behave like the values 0 and 1, respectively, in almost all
contexts, the exception being that when converted to a string, the
strings "False" or "True" are returned, respectively.
The rules for integer representation are intended to give the most meaningful interpretation of shift and mask operations involving negative integers and the least surprises when switching between the plain and long integer domains. Any operation except left shift, if it yields a result in the plain integer domain without causing overflow, will yield the same result in the long integer domain or when using mixed operands.

Comment:
Merge with text from the library reference: > Boolean values are the two constant objects False and True. They are used to represent truth values (although other values can also be considered false or true). In numeric contexts (for example when used as the argument to an arithmetic operator), they behave like the integers 0 and 1, respectively. The built-in function bool() can be used to cast any value to a Boolean, if the value can be interpreted as a truth value (see section Truth Value Testing above). > They are written as False and True, respectively.
Posted by infogami