更多pythonic方式更新字典中的现有值

hei*_*iRa 2 python dictionary

让我们假设我有一个字典_dict和一个变量n.

_dict = {'a': 9, 'b': 7, 'c': 'someValue'}
n = 8
Run Code Online (Sandbox Code Playgroud)

我想只更新一个条目,例如,{'b': 7}只有当值n大于实际值时b.到目前为止我得到的解决方案是

_dict.update({'b': n for key, value in _dict.items() if key == 'b' and n > value})
Run Code Online (Sandbox Code Playgroud)

这提供了期望的结果{'a': 9, 'b': 8, 'c': 'someValue'}.所以现在我的问题是:是否有更短,更pythonic的方式这样做?(最好不要导入额外的模块)

Mar*_*ers 13

如果您只需要更新一个密钥,则循环没有意义:

_dict['b'] = max(_dict['b'], n)
Run Code Online (Sandbox Code Playgroud)

以上设定'b'为两者的最高值.