1.1 KiB
1.1 KiB
title |
---|
Python Truth Value Testing |
Python Docs - Truth Value Testing
Any object can be tested for truth value, for use in an if
or while
condition or as operand of a Boolean operation like and
, or
, or not
.
The following values are considered false:
None
False
- zero of any numeric type, for example,
0
,0.0
,0j
,Decimal(0)
,Fraction(0, 1)
. - any empty sequence, for example,
''
,()
,[]
,set()
,range(0)
. - any empty mapping, for example,
{}
. - instances of user-defined classes, if the class defines a
__bool__()
or__len__()
method, when that method returnsFalse
or0
.
All other values are considered true -- so objects of many types are always true.
Operations and built-in functions that have a Boolean result always return 0
or False
for false and 1
or True
for true, unless otherwise stated. (Important exception: the Boolean operations or
and and
always return one of their operands.)