例如,查看无类型,我们可以看到它有NoneType
:
>>> type(None)
NoneType
但尝试访问NameError
时会产生NoneType
:
>>> NoneType
NameError: name 'NoneType' is not defined
如何访问NoneType
?
答案 0 :(得分:8)
嗯,在Python 2中,您可以从types
模块中导入它:
from types import NoneType
但实际上并没有在那里或其他任何地方实施。 types.py
只是NoneType = type(None)
。您也可以直接使用type(None)
。
在Python 3中,types.NoneType
名称消失了。只需使用type(None)
。
如果type(None)
为您显示NoneType
,而不是像<class 'NoneType'>
那样,您可能会使用某些非标准的解释器设置,例如IPython。它通常显示为类似<class 'NoneType'>
的内容,更清楚的是您不能只输入NoneType
并获取类型。
答案 1 :(得分:2)
正如@dawg在评论中所建议的,你可以做到
if (type(some_object).__name__ == "NoneType"):
# Do some
pass
您也可以
NoneType = type(None)
isinstance(some_object, NoneType)