在 Python 中将字典添加到字典

Hemank Mehtani 2023年10月10日
  1. 在 Python 中使用 update() 方法将字典添加到另一个字典
  2. 在 Python 中使用字典解包运算符**将字典添加到另一个字典
  3. 在 Python 中使用|运算符将字典添加到另一个字典
  4. 在 Python 中使用 collections.ChainMap 容器将字典添加到另一个字典
在 Python 中将字典添加到字典

Python 中的字典以键值对的形式构成一组元素。它是一个无序且可变的集合。

在本教程中,我们将讨论在 Python 中将字典附加到另一个字典的不同方法。

在 Python 中使用 update() 方法将字典添加到另一个字典

update() 方法将一本字典连接到另一本字典。使用这种方法,我们可以将一个字典的键值对插入到另一个字典中。

例如,

D1 = {"loginID": "xyz", "country": "USA"}
D2 = {"firstname": "justin", "lastname": "lambert"}
D1.update(D2)
print(D1)

输出:

{'loginID': 'xyz', 'country': 'USA', 'firstname': 'justin', 'lastname': 'lambert'}

在上面的代码中,我们使用 update() 方法连接了字典 D1D2

请注意,在此方法中,第一个字典会使用第二个字典的值进行更新。在我们的示例中,D1 已更新。

在 Python 中使用字典解包运算符**将字典添加到另一个字典

我们可以在 Python 中添加两个字典,并使用字典解包运算符 ** 将它们的组合存储在第三个字典中。此方法不会更改原始字典的键值对。

此运算符适用于 Python 3.5。

例如,

def merge(D1, D2):
    py = {**D1, **D2}
    return py


D1 = {"loginID": "xyz", "country": "USA"}
D2 = {"firstname": "justin", "lastname": "lambert"}
D3 = merge(D1, D2)
print(D3)

输出:

{'loginID': 'xyz', 'country': 'USA', 'firstname': 'justin', 'lastname': 'lambert'}

在上面的代码中,我们在 Python 中使用 ** 将第一个字典 D1 和第二个字典 D2 添加到单独的第三个字典 D3 中。

在 Python 中使用|运算符将字典添加到另一个字典

我们可以在 Python 的最新更新(Python 3.9)中使用这个运算符。合并两个字典是一种简单方便的方法。

在下面的代码片段中,我们使用|运算符。

# >= Python 3.9

def Merge(D1, D2):
    py = D1 | D2
    return py


D1 = {"RollNo": "10", "Age": "18"}
D2 = {"Marks": "90", "Grade": "A"}
D3 = Merge(D1, D2)
print(D3)

输出:

{'RollNo': '10', 'Age':'18' ,'Marks': '90', 'Grade': 'A'}

在 Python 中使用 collections.ChainMap 容器将字典添加到另一个字典

ChainMap 用于将多个字典映射到一个单元中。我们必须从集合模块中导入它。

我们使用 ChainMap() 构造函数来创建一个 ChainMap 容器,同时传递我们想要组合的字典作为一组参数。

请参考以下代码。

from collections import ChainMap

D1 = {"w": 1, "x": 2}
D2 = {"y": 3, "z": 4}
D3 = ChainMap(D1, D2)
D3 = {k: v for d in (D1, D2) for (k, v) in d.items()}
print(D3)

输出:

{'w': 1, 'x': 2, 'y': 3, 'z': 4}

此方法适用于 Python 2.7 及更高版本。

相关文章 - Python Dictionary