我有一个产品及其变体的dict列表,其定义如下:attribute_list = [
{'Finish': 'Chrome'},
{'Size': 'Large'},
{'Weight': '1.6kg'},
{'Finish': 'Chrome'},
{'Weight': '1.9kg'}
]
我希望创建两个列表,其中一个列表包含列表中没有重复的dict,即:
^{pr2}$
…以及另一个包含重复键和值的,即:duplicates_list = [
{'Weight': '1.6kg'}
{'Weight': '1.9kg'}
]
下面是我到目前为止的代码,这让我有两个字典,但1)我认为这是可怕的低效,2)我不知道如何删除重复字典的第一个实例。在compiled_list = list()
compiled_list_keys = list()
duplicates_list = list()
for attribute in attribute_list:
for k, v in attribute.items():
if k not in compiled_list_keys:
compiled_list_keys.append(k)
compiled_list.append(attribute)
else:
if attribute not in compiled_list:
duplicates_list.append(attribute)
compiled_list_keys.remove(k)