【python学习】如何将字典添加到字典


前言

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


一、update()

在 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() 方法连接了字典 D1 和 D2。

请注意,在此方法中,第一个字典会使用第二个字典的值进行更新。在我们的示例中,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)中使用这个运算符。合并两个字典是一种简单方便的方法。

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

定义合并(D1,D2):
py = D1 | D2
返回 py
D1 = {“RollNo”: “10”, “Age”:“18”}
D2 = {“Marks”: “90”, “Grade”: “A”}
D3 = 合并(D1,D2)
打印(D3)
输出:

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

四、collections.ChainMap

使用 collections.ChainMap 容器在 Python 中将字典添加到另一个字典
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 及更高版本。


总结

1.在 Python 中使用 update() 方法将字典添加到另一个字典
2.使用字典解包运算符**在 Python 中将字典添加到另一个字典
3.在 Python 中使用|运算符将字典添加到另一个字典
4.使用 collections.ChainMap 容器在 Python 中将字典添加到另一个字典
Python 中的字典以键值对的形式构成一组元素。它是一个无序且可变的集合。

转载自 https://www.delftstack.com/zh/howto/python/add-dictionary-to-a-dictionary-python/#%E5%9C%A8-python-%E4%B8%AD%E4%BD%BF%E7%94%A8-%E8%BF%90%E7%AE%97%E7%AC%A6%E5%B0%86%E5%AD%97%E5%85%B8%E6%B7%BB%E5%8A%A0%E5%88%B0%E5%8F%A6%E4%B8%80%E4%B8%AA%E5%AD%97%E5%85%B8

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值