如何使用键合并`defaultdict`中的列表,但在该键中保持列表分开?

eve*_*007 5 python dictionary for-loop list defaultdict

我想合并包含defaultdict来自两个不同数据/文件的类(键)和列表值的列表。我想使用唯一键合并列表,但将列表值分开。

输入:

defaultdict(<class 'list'>, {'1335': ['C', 'T', 'T', 'C', 'T', 'G'], '254': ['T', 'T', 'G', 'C', 'G', 'G']})

defaultdict(<class 'list'>, {'1335': ['A', 'C', 'A', 'A', 'C', 'A'], '254': ['A', 'G', 'A', 'T', 'A', 'A']})

输出:

defaultdict(<class 'list'>, {'1335': ['C', 'T', 'T', 'C', 'T', 'G'], ['A', 'C', 'A', 'A', 'C', 'A'] , '254': ['T', 'T', 'G', 'C', 'G', 'G'], ['A', 'G', 'A', 'T', 'A', 'A']})

谢谢,

Pet*_*ood 4

您希望新字典的值是列表的列表。

您可以创建一个新defaultdict的列表,并附加每个字典中的列表值:

input_dicts = [dict1, dict2]

result = defaultdict(list)

for to_merge in input_dicts:
    for key, value in to_merge.items():
        result[key].append(value)
Run Code Online (Sandbox Code Playgroud)