2016-09-16 22 views
-3

私は辞書を含む2つのリストを持っています。各辞書には1つのエントリしかありません。辞書A(リストX)のキーがリストYの辞書にも存在するかどうか確認したいと思います。その場合は、キーとそれに属する値を出力する必要があります。Pythonリストの辞書の比較

例:

listA = [{key1: value1}, {key2: value2}] 
listB = [{key1: value3}, {key4: value4}] 

この場合、出力は次のようになります予め

key1: value1, value3 

おかげ。それを行うには

+2

あなたが設定していない辞書のリストを持っています。 – Kasramvd

+0

申し訳ありませんが、間違いでした。気づいてくれてありがとう。 – user2879551

答えて

0

非常に単純な方法は、次のようになります。

#!/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) 
+0

これは私のためには機能しません。リストを圧縮するとL1の最初の項目がL2などの最初の項目に一致します。私があなたの解決策と一致する唯一の時間は、これらの2つが偶然一致するときです(ほぼ決してありません)。あなたは他の考えを持っていますか? – user2879551

+0

素晴らしい!どうもありがとう! – user2879551