如何匹配封装在 python 列表中的两个字典的键?

How to match the keys of two dictionaries encapsulated within a list in python?

我有两个词典,它们在一个列表中。该列表如下所示 [{'10.1.1.0':[1], '10.1.1.1':[2]}, {'10.1.1.0':[3], '10.1.1.1':[4]}] .我需要的是相同的键,即匹配的 ips 我想要相应的数字或值。

这可能吗?任何帮助都会非常有用。

Python 中的字典无法实现您尝试执行的操作。重复键 are not allowed。相反,您可以将相同的键映射到列表中的多个值:

x = [{'10.1.1.0': [1], '10.1.1.1': [2]}, {'10.1.1.0': [3], '10.1.1.1': [4]}]
new_dict = dict() # initialize a new dictionary
for d in x: # iterate over the original list of dictionaries
    for k, v in d.items(): # get all the items in the current dictionary
        if k in new_dict: # add the key and value, or add the value to a key
            new_dict[k] += v
        else:
            new_dict[k] = v
print(new_dict)

输出:

{'10.1.1.0': [1, 3], '10.1.1.1': [2, 4]}