为什么我在Python中收到错误消息'无法导入名称NoneType'?

del*_*ber 10 python porting python-3.x

我正在尝试将一些代码从2转换为3以及以下简单的脚本

import types
from types import NoneType
Run Code Online (Sandbox Code Playgroud)

结果是

ImportError:无法导入名称NoneType

如何将上述内容从2转换为3?

pok*_*oke 13

模块中不再有NoneType参考types.你应该直接检查身份None,即obj is None.另一种方法,如果你真的需要NoneType,可以使用它:

NoneType = type(None)
Run Code Online (Sandbox Code Playgroud)

这实际上与types.NoneType之前定义的完全相同,在200711月28日被删除之前.

作为旁注,您不需要导入模块即可使用from .. import语法,因此import types如果您不在其他任何地方使用模块引用,则可以删除该行.