我有一个有时会返回 NoneType 值的方法。那么我怎么能质疑一个 NoneType 的变量呢?例如,我需要使用 if 方法
if not new: new = '#'
我知道这是错误的方式,我希望你明白我的意思。
那么我怎么能质疑一个 NoneType 的变量呢?
使用is运算符,像这样
is
if variable is None:
为什么这行得通?
由于None是NoneTypePython 中唯一的单例对象,我们可以使用is运算符来检查变量是否包含None在其中。
None
NoneType
引用isdocs,
对象身份的运算符is和测试:当且仅当和是同一个对象时为真。产生逆真值。is not``x is y``x``y``x is not y
is not``x is y``x``y``x is not y
由于只能有一个None,is将是检查的首选方法None。
从马口中听到
引用Python 的编码风格指南 - PEP-008(由 Guido 自己共同定义),
与单例的比较 None 应该总是用isoris not来完成,而 不是相等运算符 。
is not