我有点困惑,为什么这么多python开发人员在他们的条件语句中不使用if。

例如,我们有一个函数,

def foo(bar = None):
    if not bar:
        bar = 2

但为什么要这样做呢?我的意思是,如果bar != None或者如果bar不是Nonebe更明确?如果不试着说什么呢?


是的,如果bar不是None则更明确,因此更好,假设它确实是您想要的。这并不总是这样,有细微的区别:if not bar:如果bar是任何类型的零或空容器,或False,将执行。 很多人用not bar来表示bar不是None。