Python - 删除具有匹配值的字典

当需要删除具有匹配值的字典时,使用字典理解。

以下是相同的演示 -

示例

my_dict_1 = [{'Hi': 32, "there": 32, "Will":19},{'Hi': 19, "there": 100, "Will": 13}, {'Hi': 72, "there": 19, "Will": 72}]

print("第一本字典是: ")
print(my_dict_1)

my_dict_2 = [{'Hi': 72, "Will": 19}, {"Will": 13, "Hi": 19}]
print("第二本词典是: ")
print(my_dict_2)

K = "Hi"
print("K 的值是 ")
print(K)

temp = { element[K] for element in my_dict_2}

my_result = [element for element in my_dict_1 if element[K] not in temp]

print("结果是: " )
print(my_result)
输出结果
第一本字典是:
[{'Hi': 32, 'there': 32, 'Will': 19}, {'Hi': 19, 'there': 100, 'Will': 13}, {'Hi': 72, 'there': 19, 'Will': 72}]
第二本词典是:
[{'Hi': 72, 'Will': 19}, {'Will': 13, 'Hi': 19}]
K 的值是
Hi
结果是:
[{'Hi': 32, 'there': 32, 'Will': 19}]

解释

  • 两个字典被定义并显示在控制台上。

  • K 的值被定义并显示在控制台上。

  • 迭代第二个字典,用 K 检查元素并存储在临时变量“temp”中。

  • 迭代第一个字典,其中的元素用临时变量“temp”检查并分配给一个变量。

  • 这个结果被分配给一个变量。

  • 这是显示在控制台上的输出。