任何对象都可以被测试真值、用于if
或while
条件中或作为下面的布尔操作的操作数。以下值被视为假:
None
False
- 任何数值类型的零,例如,
0
、0.0
、0j
。 - 任何空序列,例如,
"
、()
、[]
。 - 任何空映射,例如,
{}
。
用户定义的类的实例,如果该类定义一个 __bool__()
或__len__()
方法,当该方法返回布尔
值False
或整数零的时候 。
所有其他值都被认为是真 —— 所以许多类型的对象总是为真。
结果为布尔值的操作和内置函数,总是返回0
或False
表示假,返回1
或True
表示真,除非另有说明。(重要的例外:布尔运算or
和and
总是返回其操作数之一。)
时间: 2024-10-11 11:40:53