我经常讨论下面的if/else语法,我希望有些人可以给我一些关于他们认为更清楚或者是否违反任何Pythonism(我已经搜索过并且无法找到任何东西)的意见).
其中一个更好还是对/错?
value = None
if 'value' in some_dict:
value = some_dict['value']
some_func(value=value)
Run Code Online (Sandbox Code Playgroud)
要么:
if 'value' in some_dict:
value = some_dict['value']
else:
value = None
some_func(value=value)
Run Code Online (Sandbox Code Playgroud)
要么:
some_func(value=some_dict.get('value', None))
Run Code Online (Sandbox Code Playgroud)
我可以看到所有的原因.