0

这可能是一个很长的镜头,但我想我还是会尝试的。

无论如何,有没有让一个班级表现得像一个NoneType而不是一个班级?

假设我在第三方 API 中有这个对象,我无法更改,但我可以对其进行修补。大多数方法可以在同一阶段返回此对象。这个对象与 相同None,因为他们决定使用自己的自定义类型来表示与 相同的东西None

我是否有可能对这种类型进行猴子修补,以便在检查时它会像 None 一样:

value = SpecialNoneClass()
if value is None:
   print foobar 
4

1 回答 1

3

不,你不能,因为is测试身份,而不是平等。value引用必须指向与相同的对象None

None是一个单例对象,并且 None是 Python 3 中的一个关键字,因此您也不能None引用另一个对象。

于 2013-08-13T11:54:08.660 回答