a = [{'a':{'a':1}}, {'b':{'b':1}}, {'c':{}}]
b = [{'a':{'a':1,'b':0}}, {'b':{'a':1}}]
ここで私はdictの2つのリストを持っています。それはまた仕事、辞書の2つのリストを比較して、すべてのキーと値を持つ新しいリストを作成します。
newlist = [{'a':{'a':1,'b':0}}, {'b':{'a':1,'b':1}}, {'c':{'a':0,'b':0}}]
a = [{'a':{'a':1}}, {'b':{'b':1}}, {'c':{}}]
b = [{'a':{'a':1,'b':0}}, {'b':{'a':1}}]
ここで私はdictの2つのリストを持っています。それはまた仕事、辞書の2つのリストを比較して、すべてのキーと値を持つ新しいリストを作成します。
newlist = [{'a':{'a':1,'b':0}}, {'b':{'a':1,'b':1}}, {'c':{'a':0,'b':0}}]
A_list = [{'a':{'A':1}}, {'b':{}}]
B_list = [{'b': {'B': 1}}, {'a': {'A': 0}}]
list_with_all_keys = [{'a':{}}, {'b':{}}, {'c':{}}]
new_lod = [{k:{'A':(1 if k in A_list and 'A' in A_list[k] and A_list[k]['A'] is 1 else 0),
'B':(1 if k in B_list and 'B' in B_list[k] and B_list[k]['B'] is 1 else 0)}}
for k in [list(n.keys())[0] for n in list_with_all_keys]]
new_lod
は、私が起こっていただきまし明確にするために、いくつかの大文字を追加したことを、[{'a': {'B': 0, 'A': 0}}, {'b': {'B': 0, 'A': 0}}, {'c': {'B': 0, 'A': 0}}]
注その後、次のとおりです。私は、これらを比較し、このような新しいリストを生成したいですA
/A_list
とB
/B_list
の代わりに、小文字のa
とb
のみを使用する場合は、
追記
私は、リスト内の辞書の最初のレベルで重複するキーを取得しないと仮定します。私はこれが正しい仮定だと思います。なぜなら、必要な出力は、第1レベルの辞書のこれらの重複キーを崩壊させるからです。したがって、リストをスキップして、辞書のリストの代わりに1つの辞書を使用することができます。これは、式をわずかに単純化します。しかし、あなたのアプリケーションに応じて、2つのリスト、辞書、またはセットを比較または組み合わせる方が、より簡単な方法があるかもしれません。それをやっての
A_dict = {'a':{'A':1}, 'b':{}}
B_dict = {'b': {'B': 1}, 'a': {'A': 0}}
dict_with_all_keys = {'a':{}, 'b':{}, 'c':{}}
# a dictionary solution with no list
new_dict = {k:{'A':(1 if k in A_dict and 'A' in A_dict[k] and A_dict[k]['A'] is 1 else 0),
'B':(1 if k in B_dict and 'B' in B_dict[k] and B_dict[k]['B'] is 1 else 0)}
for k in dict_with_all_keys}
より読みやすい方法が
a = [{'a':{'a':1}}, {'b':{'b':1}}, {'c':{}}]
b = [{'a':{'a':1,'b':0}}, {'b':{'a':1}}]
result = {}
for c in a + b:
for key,value in c.items():
result[key] = dict()
result[key]['a'] = value.get('a', 0)
result[key]['b'] = value.get('b', 0)
print(result)
だろうあなたはあなたがこの機能のうち、必要なもの機能について具体的にする必要があり
{'c': {'a': 0, 'b': 0}, 'a': {'a': 1, 'b': 0}, 'b': {'a': 1, 'b': 0}}
あなたのソリューションは教育的価値はありますが、OPで必要なフォーマットは無視されます。 – fabianegli
に答える与えます。これまでに試したことのある特定のコードも投稿してください。 – Brian
私は欠けているキーと値を見つける辞書の完全なリストを生成したい。私はこれのような初期化された空のリストを持っています= {{'a':{}}、{'b':{}}、{'c':{}}]そしてb = [{'} a ':{' a ':1、' b ':0}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}で、 }}、{'b':{'a':0、 'b':1}}] –
あなたはこれのようなものが欲しいですか? 'A = [{'a':{}}、{'b':{}}、{'c':{}}]; B = [{'a':{'A':1}}、{'b':{'B':1}} ''結果リストC = [{' a ':{' A ': 1、B ':0}}、{' b ':{' A ':0、' B ':1}}、{' c ':{' A ':0、' B ':0}}] ] ' – fabianegli