一目了然看代码:　#判断字符串是否为空,注意不是s==''s='　'if　s.strip()=='':　print　's　is　null'#或者if　not　s.strip():　print　's　is　null'#判断变量是否为空,直接用变量为条件p　=　''　#这里仅以空字符串为例,其他空值同样适用if　p:　print　'p　is　not　empty'else:　print　'p　is　none'#其他三种写法:if　X　is　None:if　not　X:if　not　X　is　None:　详细解释　python语言与其他语言不同,没有NULL类型,空用none来表示,　但同时需要注意,none是有数据类型的,type为‘Nonetype’　因此python中判断对象为不为空时需要注意对象类型　example:　type:str　判断语句:if　val.strip(很容易犯的错误:　if　a　is　None:　do　something.else:　do　the　other　thing.　这样写看起来不错,但实际上会有问题。一般来讲,　Python　中会把下面几种情况当做空值来处理:　None　False　0,0.0,0L　其中　None　的特殊之处在于,它既不是数值　0　,也不是某个数据结构的空值,它本身就是一个空值对象。它的类型是　NoneType　,它遵循单例模式,也就是说,在同一命名空间下的所有　None　其实质上都是同一个空值对象。　>>>　id(None)1795884240>>>　None　==　0False>>>　None　==　''False>>>　a　=　None>>>　id(a)1795884240>>>　a　==　NoneTrue　上面的判断显然不符合我们的期望:只有当　a　被显示赋值为　None　的情况下,　a==None　才为　True　。　那么,对于　Python　中更为广义的　None　值判断,我们应该怎么做呢?　>>>　a　=　''　#这里仅以空字符串为例,其他空值同样适用>>>　if　a:...　print　'a　is　not　empty'...　else:...　print　'a　is　a　empty　string''a　is　a　empty　string.'　可以看出,　if　a　的判断方式得出了我们想要的结果,那么　if