我有点困惑,为什么这么多python开发人员在他们的条件语句中使用if not
。
例如,假设我们有一个函数,
def foo(bar = None):
if not bar:
bar = 2
但为什么要走这条路呢?我的意思是,做if bar != None
或if bar is not None
不是更明确吗?if not
想要说什么?
发布于 2013-05-25 00:29:35
是的,if bar is not None
更明确,因此更好,假设它确实是您想要的。情况并不总是这样,有一些细微的差异:如果bar
是任何类型的零或空容器或False
,则将执行if not bar:
。很多人在他们真正指的是bar is not None
的地方使用not bar
。
https://stackoverflow.com/questions/16739555
复制相似问题