可以测试任何对象的真值,以在if或while条件中使用或用作以下布尔运算的操作数。以下值为“假”:
没有
假
任何数值类型的零,例如
0,0L,0.0,0j。任何空序列,例如
'',(),[]。任何空映射,例如
{}。用户定义的类的实例,如果该类定义了
__nonzero__()或__len__()方法,则该方法返回整数0或bool
value时False。所有其他值都被视为true,因此许多类型的对象始终为true。除非另有说明,否则具有布尔结果的操作和内置函数始终返回0或
Falsefalse,返回1或Truetrue。(重要的例外:布尔运算符“或”和“和”始终返回其操作数之一。)
https://docs.python.org/2/library/stdtypes.html#truth-value-
testing
如前所述,您可以通过修改非零值来覆盖自定义对象。



