如何检查字典d1在python中的d2中是否存在?
d1 = {u'from':{u'dn':'topology/pod-1/node-101'}}
d2 = {u'faults': [{u'count': 1, u'pos': {u'y': 339, u'x': 860}, u'level': u'critical'}], u'from': {u'dn': u'topology/pod-1/node-101', u'type': u'leaf'}, u'to': {u'dn': u'topology/pod-1/node-104', u'type': u'spine'}}
答案 0 :(得分:1)
如果dict1
的子集执行此操作,您可以检查dict2
是否
all(item in d2.items() for item in d1.items())
答案 1 :(得分:1)
基本上从OP的示例判断(因为英文文本是神秘的),我会说...:
d1
是dict
,其键是Unicode,值为dict
s d2
是dict
,其键是Unicode,值为list
或dict
s 并且任务是:验证k
的每个键d1
是否也是d2
的{{1}}值的关键字; dict
是d1[k]
的“子词典”(前者的每个键也是后者的键,具有相同的值)。
当然这是一个很多的解释,所以我会在初级代码中编写代码,以便于将来可能需要调整: - )
d2[k]
你说什么,OP?一旦这符合您想要的语义,它就可以被简化,压缩和优化 - 但是让我们应用“首先使其成功”的宏观格言: - )
答案 2 :(得分:1)
您可以迭代它并检查它是否存在。
d1 = dict.items()
d2 = dict.items()
for values in d1:
if values in d2:
print values, " is in dict"