在 Python 中,有一个特殊的常量 None(N 必须大写)。和 False 不同,它不表示 0,也不表示空字符串,而表示没有值,也就是空值。
这里的空值并不代表空对象,即 None 和 [] 以及 "" 不同。
>>> None is []
False
>>> None is ""
False
>>>
None 有自己的数据类型。
>>> type(None)
可以看到,它属于 NoneType 类型。
需要注意的是,None 是 NoneType 数据类型的唯一值,也就是说,我们不能再创建其它 NoneType 类型的变量,但是可以将 None 赋值给任何变量。如果希望变量中存储的东西不与任何其它值混淆,就可以使用 None。
除此之外,None 常用于 assert、判断以及函数无返回值的情况。
举个例子,我们常使用 print() 函数输出数据,其实该函数的返回值就是 None。因为它的功能是在屏幕上显示文本,根本不需要返回任何值,所以 print() 就返回 None。
>>> syztoo = print('Hello!')
Hello!
>>> syztoo == None
True
另外,对于所有没有 return 语句的函数定义,Python 都会在末尾加上 return None,
而且,使用不带值的 return 语句,也返回 None。