真值

以下值被认为是假的,因为它们在应用于布尔运算符时计算为 False

  • 没有
  • 0,或任何等于零的数值,例如 0L0.00j
  • 空序列:''""()[]
  • 空映射:{}
  • 用户定义的类型,其中 __bool____len__ 方法返回 0 或 False

Python 中的所有其他值都计算为 True

注意: 一个常见的错误就是简单地检查操作的假值,该操作返回不同的假值,其中差异很重要。例如,使用 if foo() 而不是更明确的 if foo() is None