无法理解,如果 None 不等于零,那么下面的 if 条件如何通过?
>>> None == 0
False
>>> if not None:
... print ("1")
...
1
>>>
>>> None == False
False
>>>
请您参考如下方法:
python 中有很多东西在 bool 上下文中使用时被认为是“假的”(比如 if 语句或 bool 运算符,如 and、not、或等)。
特别是 None、False、任何比较等于 0 的数字数据类型,或任何实现 __len__ 且 len(container) == 的类型0。
有关更多信息,请考虑:
>>> bool(False)
False
>>> bool(0)
False
>>> bool([])
False
>>> bool('')
False
>>> bool(None)
False
>>> not None
True
>>> not 0
True
>>> not False
True
>>> not ''
True
>>>
有关详细信息,请参阅 docs
