将一个字典中的键/值复制到另一个字典中

11

我有一个主数据字典,大致如下:{'UID': 'A12B4', 'name': 'John', 'email': 'hi@example.com}

我还有另一个字典,如下:{'UID': 'A12B4', 'other_thing: 'cats'}

我不清楚如何将这两个字典“合并”,以便将“other_thing”添加到主字典中。 我需要的是:{'UID': 'A12B4', 'name': 'John', 'email': 'hi@example.com, 'other_thing': 'cats'}

虽然我对此类综合理解方面还很陌生,但我的直觉告诉我,一定有一种简单直接的方法。

2个回答

34

你希望使用 dict.update 方法:

d1 = {'UID': 'A12B4', 'name': 'John', 'email': 'hi@example.com'}
d2 = {'UID': 'A12B4', 'other_thing': 'cats'}
d1.update(d2)

输出:

{'email': 'hi@example.com', 'other_thing': 'cats', 'UID': 'A12B4', 'name': 'John'}

根据文档

使用来自其他字典的键值对更新此字典,覆盖现有键。返回None。


1
太棒了,伙计!那就是我一直无法理解的东西。它如此简单易懂。谢谢。 - bryan
1
@mhlester:如果我只想将d1的前两个值复制到d2中怎么办? - Clint Whaley
1
@ClintWhaley,听起来你正在提出一个新问题 - mhlester
这是按值复制还是按引用复制?我问这个问题是因为我真的需要将一行从一个字典剪切并粘贴到另一个字典中,然后一旦该行在新字典中,我需要向该行(显然是一个字典)添加键/值。 - gunslingor
@user3656612 这是按引用传递的,这在 Python 对象中很常见。 - mhlester

4
如果您想要合并字典,可以调用一个非常好用的内置函数,叫做update
具体来说:
test = {'A': 1}
test.update({'B': 2})
test
>>> {'A':1, 'B':2}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接