是否有更多的Pythonic方法来实现此逻辑:
res = func()
if res is not None: # res is either True, False, something else
if res is True:
#do something # res is True
elif res is False:
#do something else # res is False
else:
#do something else2 # res is not in [True,False]
else:
#failed # res is None
Run Code Online (Sandbox Code Playgroud)
不,你已经覆盖了它.
通常,不要使用is True或is False,如果必须具有三态布尔值,请使用:
if res is None:
# handle None case
elif res:
# handle true case
else:
# handle false case
Run Code Online (Sandbox Code Playgroud)
例如,让开发人员负担正确地使用三态.
如果函数需要传达更多状态,则不应使用布尔值; 在这种情况下切换到使用枚举值.
| 归档时间: |
|
| 查看次数: |
69 次 |
| 最近记录: |