a_standard = {
'section1': {
'category1': 1,
'category2': 2
},
'section2': {
'category1': 1,
'category2': 2
}
}
a_new = {
'section1': {
'category1': 1,
'category2': 2
},
'section2': {
'category1': 1,
'category2': 3
}
}
我想找出a_standard
和a_new
之间的区别,即a_new[section2][category2]
之间的差值是2
和{
我应该把每一个都转换成一个集合,然后做差分或循环并比较dict吗?在
如果密钥相同,则可以执行此操作:
我正在打电话,如果语法有点混乱,很抱歉。在
可以使用递归:
输出:
^{pr2}$这将产生对应于不等值的键。在
编辑:无列表理解:
输出:
这个解决方案利用了生成器(因此有
yield
语句),它动态地存储生成的值,只记住它停止的地方。这些值可以通过将返回的结果强制转换为一个列表来获得。yield
使累积值差异更容易,并且不需要在函数或全局变量中保留额外的参数。在相关问题 更多 >
编程相关推荐