繁体   English   中英

将键/值对的列表(或其他迭代器)添加到dict的Python方法是什么?

[英]What's a Pythonic way to add a list (or other iterator) of key/value pairs to a dict?

要使用从列表,集合,生成器或字典转换的值构造字典,我​​使用字典理解。

d = { r['name']:r for r in responses }

这里的responses是一个命令,我也可以使用列表,例如:

d = { extract_the_key(r):extract_the_value for r in responses }

现在假设我已经有了字典。 如何将相同的键值对添加到字典中。

当然,我可以这样做:

for r in responses:
    d[extract_the_key(r)] = extract_the_value(r)

但这似乎不像Python一样简单。 是否有惯用的方法?

请注意,我可能已经拥有该字典,因为我已经在其中设置了一些值。 但是我可能同样已经拥有它,因为它是defaultdictdict其他扩展。 这意味着我不能只使用新值创建一个新的字典,然后以某种“理解风格”将两者结合起来。

您可以使用字典的update方法,例如

d.update((extract_the_key(r), extract_the_value(r)) for r in responses)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM