其中无任何测试。
if val != None: if not (val is None): if val is not None:
哪一个更可取?为什么?
if val is not None: # ...
是用于测试变量未设置为 的 Python 惯用语。此惯用语在声明具有默认参数 的关键字函数None时有特殊用途。测试 Python 中的身份。因为在正在运行的 Python 脚本/程序中存在且只有一个 实例,所以 是最佳测试。\
None
至于为什么这比
if not (val is None): # ...
这只是Python 之禅的一部分:“可读性最重要。”好的 Python 通常接近好的伪代码。
检查值是否存在的首选方法None是:
if val is not None:
is
if val != None:
!=
__eq__
if not (val is None):