在Python中,有几个值计为False:
>>> if False or None or 0 or 0.0 or '' or [] or {} or set():
... print 'True :)'
... else:
... print 'False :('
...
False :(
Run Code Online (Sandbox Code Playgroud)
所以,在我的代码中的某个地方,我正在做这样的事情:
some_var = other_var or 'default' # Some default value
Run Code Online (Sandbox Code Playgroud)
other_var可能是None或任何其他价值,如果它None,some_var应该填补'default'.
但是我一直遇到一些麻烦,所以,调试我的代码我发现other_var有时候0(或任何其他值算作False),并且some_var充满了'default'而不是0.
那么,有没有办法完成我正在尝试而不是这样做?
if other_var is None:
some_var = 'default'
else:
some_var = other_var
Run Code Online (Sandbox Code Playgroud)
不是有效的答案.
小智 6
还有就是在条件表达式(也称为"三元操作")语法:
some_var = 'default' if other_var is None else other_var
Run Code Online (Sandbox Code Playgroud)
快乐的编码.
| 归档时间: |
|
| 查看次数: |
84 次 |
| 最近记录: |