python 中字典条目的空合并

Null coalescing on a dict entry in python

所以,我知道,在 Python 我可以这样做:

variable_name = other_variable or 'something else'

...如果 other_variable 为假,则将 'something else' 赋给 variable_name,否则将 other_variable 赋给 variable

我可以用 dict 做一个简洁的类似事情吗:

variable_name = my_dict['keyname'] or 'something else'

...或者不存在的键名是否总是会引发错误,导致失败?

如果 'keyname' 在您的词典中不存在,您将看到 KeyError。相反,您可以使用:

variable_name = my_dict.get('keyname', False) or 'something else'

使用此逻辑,当 'keyname' 不存在或 my_dict['keyname'] 为 Falsy 时,将分配 'something else'