if
是声明.not start
是表达式,not
是一个布尔运算符.
not
返回True
如果操作数(start
在这里)被认为是假的.Python认为所有对象都是真的,除非它们是数字零,或者是空容器,或者是None
对象或布尔False
值.如果是真值则not
返回.请参阅文档中的真值测试部分.False
start
所以,如果start
是None
,那么确实not start
是真的.start
也可以是0
,或者是空列表,字符串,元组字典或集合.许多自定义类型也可以指定它们等于数字0或应该被视为空:
>>> not None True >>> not '' True >>> not {} True >>> not [] True >>> not 0 True
注意:因为None
是一个单例(在Python进程中只有该对象的一个副本),所以你应该总是使用is
或测试它is not
.如果严格想测试达start
是None
,然后使用:
if start is None: