我想检查变量是否属于NoneType
类型。对于其他类型,我们可以做类似的事情:
type([])==list
但对于NoneType
这种简单的方法是不可能的。也就是说,我们不能说type(None)==NoneType
。还有另一种方法吗?为什么有些类型而不是其他类型可能?谢谢。
答案 0 :(得分:14)
NoneType
恰好不会自动进入全局范围。这不是一个真正的问题。
>>> NoneType = type(None)
>>> x = None
>>> type(x) == NoneType
True
>>> isinstance(x, NoneType)
True
在任何情况下,进行类型检查都是不寻常的。相反,你应该测试x is None
。
答案 1 :(得分:8)
当然你可以做到。
type(None)==None.__class__
True