if not start:
new.next = None
return new
“如果不是”是什么意思? 这段代码什么时候执行?
与说法相同 如果开始==无:然后做点什么?
答案 0 :(得分:5)
if
。 not start
是表达式,not
为boolean operator。
not
)被视为 false ,则 True
会返回start
。 Python将所有对象视为true,除非它们是数字零,或空容器,或None
对象或布尔False
值。如果not
是真值,则False
会返回start
。请参阅文档中的Truth Value Testing section。
因此,如果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:
答案 1 :(得分:0)
当start
为False
,0
,None
,空列表[]
,空字典{}
,空时执行设置...