且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

python 中的 空 无 None True 之间的理解和应用

更新时间:2022-09-11 10:44:32

你咋python做判断的时候 经常看到这几种情况


if True:

if s:

if key is not None:

if not s:



等这样的判断


理解

1 空是一个数据类型的无 如

s=''

l=[]

d = {}

t = ()

以上都是表示无元素


1
2
3
4
5
6
7
In [33]: s=''
In [34]: if s:
   ....:     print 's字符串不为空'
   ....: else:
   ....:     print 's字符串为空'
   ....:     
s字符串为空


常用,判断一个字符串是否有'出空格或\n之外的元素'常用如下判断

1
2
3
4
if s.strip():
    pass
else:
    pass



2 None 类型

None是一个NoneType类型 ,注意是类型

1
2
3
4
5
In [48]: a = None
In [49]: type(a)
Out[49]: NoneType
In [50]: type(None)
Out[50]: NoneType


1
2
3
4
5
6
In [44]: if is not None:
   ....:     print 'a not None'
   ....: else:
   ....:     print 'None'
   ....:     
None


常用判断一个元素是否为None类型

1
2
3
4
if is not None:
    pass
else:
    pass

None常出现在函数的默认参数赋值中def f(s=None) 和 返回值return None中




3 布尔类型  True False

1
2
3
4
5
6
In [45]: if True:
   ....:     print '真'
   ....: else:
   ....:     print '假'
   ....:     


常用: 函数的return True 或者  if 判断中


if True 等于  if not False

1
2
In [47]: not False
Out[47]: True



4 not 为取反

注意取反不能使用 !


if not s:

本文转自残剑博客51CTO博客,原文链接http://blog.51cto.com/cuidehua/1767091如需转载请自行联系原作者


cuizhiliang