在对这个问题的评论中,我看到了一个建议使用的声明
result is not None
Run Code Online (Sandbox Code Playgroud)
VS
result != None
Run Code Online (Sandbox Code Playgroud)
我想知道区别是什么,以及为什么可能推荐另一个?
我有一个方法,按顺序调用其他4个方法来检查特定的条件,并在每次返回Truthy时立即返回(不检查以下的方法).
def check_all_conditions():
x = check_size()
if x:
return x
x = check_color()
if x:
return x
x = check_tone()
if x:
return x
x = check_flavor()
if x:
return x
return None
Run Code Online (Sandbox Code Playgroud)
这似乎是很多行李代码.而不是每个2行if语句,我宁愿做类似的事情:
x and return x
Run Code Online (Sandbox Code Playgroud)
但那是无效的Python.我在这里错过了一个简单优雅的解决方案吗?顺便说一下,在这种情况下,这四种检查方法可能很昂贵,所以我不想多次调用它们.