首页 > 后端开发 > Python教程 > 如何高效地合并具有重复键的Python字典?

如何高效地合并具有重复键的Python字典?

Patricia Arquette
发布: 2024-12-14 14:11:11
原创
993 人浏览过

How Can I Efficiently Merge Python Dictionaries with Duplicate Keys?

合并具有重复键的字典

在Python中,字典用于存储键值对的集合。在处理具有重复键的多个字典时,在维护关联值的同时合并它们可能是一个常见的挑战。

实现此目的的一种有效方法是使用 Python 标准库中的 collections.defaultdict。这个专用字典允许使用默认工厂(例如列表)对不存在的键进行值初始化。

考虑以下示例字典:

d1 = {1: 2, 3: 4}
d2 = {1: 6, 3: 7}
登录后复制

要合并这些字典,我们可以使用空列表的默认值初始化 defaultdict:

dd = defaultdict(list)
登录后复制

接下来,我们迭代序列中的每个字典及其键值对:

for d in (d1, d2):
    for key, value in d.items():
        dd[key].append(value)
登录后复制

在此循环中,对于遇到的每个键,我们将相应的值附加到默认列表中。这种方法确保所有重复的键都与其关联的值一起处理。

因此,dd 字典将包含与重复键对应的合并值:

print(dd)  # Output: defaultdict(<type 'list'>, {1: [2, 6], 3: [4, 7]})
登录后复制

此方法特别有用当处理大量字典或可以有任意数量的输入字典时。它有效地合并所有重复的键,同时将它们的值保留在合并的输出字典中。

以上是如何高效地合并具有重复键的Python字典?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板