非常に複雑で、大きな xml ファイルを python 辞書に変換することによって作成された 2 つの辞書オブジェクトがあります。
辞書の深さがわからず、比較して次の出力が必要なだけです...
例 私の辞書はこのようなものです
d1 = {"great grand father":
{"name":"John",
"grand father":
{"name":"Tom",
"father":
{"name":"Andy",
"Me":
{"name":"Mike",
"son":
{"name":"Tom"}
}
}
}
}
}
d2 も同様ですが、フィールドのいずれかが欠落しているか、以下のように変更されている可能性があります
d2 = {"great grand father":
{"name":"John",
"grand father":
{"name":"Tom",
"father":
{"name":"Andy",
"Me":
{"name":"Tonny",
"son":
{"name":"Tom"}
}
}
}
}
}
辞書の比較により、次のような結果が得られるはずです-
Expected Key/Val : Me->name/"Mike"
Actual Key/Val : Me->name/"Tonny"
キー「name」がd2の「Me」に存在しない場合、次の出力が得られるはずです
Expected Key/Val : Me->name/"Mike"
Actual Key/Val : Me->name/NOT_FOUND
繰り返しますが、辞書の深さは可変または動的に生成できます。ここにある 2 つの辞書は例として示されています...
SOで見たすべての辞書比較の質問とその回答は、固定深度の辞書に関連しています.....