python中的None与NULL用法说明

时间:2022-08-25 12:01:44

None是一个对象,而NULL是一个类型。

Python中没有NULL,只有None,None有自己的特殊类型NoneType。

None不等于0、任何空字符串、False等。

在Python中,None、False、0、""(空字符串)、[](空列表)、()(空元组)、{}(空字典)都相当于False。

判断变量是否为空的高效方法是:

if X is None

if not X:当X为None、False、""、0、[]、()、{}时,not X为真,无法分辨

if not X is None:等价于if not (X is None)、if X is not None

判断空使用指南

if X is not None写法清晰明了,且不会出错,推荐使用;

if not x使用前,必须确定X为None、False、""、0、[]、()、{}时对判断无影响。

示例

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
x = []
y = None
 
print 'X is None测试结果'
print x is None #False
print y is None #True
 
print 'not X测试结果'
print not x #True
print not y #True
 
print 'not X is None测试结果'
print not x is None #True
print not y is None #False
 
print 'X is not None测试结果'
print x is not None #True
print y is not None #False

补充:python中None与0、Null、false区别

None是Python中的一个关键字,None本身也是个一个数据类型,而这个数据类型就是None,它可0、空字符串以及false均不一样,这些都只是对象,而None也是一个类。

给个bool测试:

?
1
2
3
4
5
6
7
8
9
val = None
 
if val:
    print "None is true"
else:
    print "None is not true"
 
#输出
None is not true

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/u012596210/article/details/93735051