我有兩個包含字典的列表。每個字典只有一個條目。我想檢查列表Y中的字典A(列表X)中的鍵是否也存在於列表Y的字典中。如果是這種情況,則應該打印鍵和屬於它的值。比較Python列表中的字典
實施例:
listA = [{key1: value1}, {key2: value2}]
listB = [{key1: value3}, {key4: value4}]
在這種情況下,輸出應該是:
key1: value1, value3
預先感謝。
我有兩個包含字典的列表。每個字典只有一個條目。我想檢查列表Y中的字典A(列表X)中的鍵是否也存在於列表Y的字典中。如果是這種情況,則應該打印鍵和屬於它的值。比較Python列表中的字典
實施例:
listA = [{key1: value1}, {key2: value2}]
listB = [{key1: value3}, {key4: value4}]
在這種情況下,輸出應該是:
key1: value1, value3
預先感謝。
一個非常簡單的方法來做到這一點是:
#!/usr/bin/env python
l1 = [{'1':"one"} , {'2':"two"}]
l2 = [{'3':"three"} , {'1':"one_too"}]
def cmp(l1,l2):
for i in l1:
for j in l2:
for (key1,value1),(key2,value2) in zip(i.iteritems(),j.iteritems()):
if key1==key2:
print key1+": "+value1+", "+value2
break
cmp(l1,l2)
這不適合我。壓縮列表將L1的第一項匹配到L2的第一項,等等。唯一一次我會與你的解決方案匹配的是當這兩個巧合匹配(這幾乎從來不是這種情況)。你有其他想法嗎? – user2879551
太棒了!非常感謝! – user2879551
你的套不字典清單。 – Kasramvd
對不起,這是一個錯誤。感謝您的注意。 – user2879551