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

How to merge the list in `defaultdict` using keys, but keep the list separate within that key?

我想合并 defaultdict 中的列表,其中包含来自两个不同 data/file 的 class(键)和列表值。 我想使用唯一键合并列表,但将列表值分开。

输入:

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']})

谢谢,

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

您可以创建一个新的 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)