【发布时间】:2020-03-13 21:57:20
【问题描述】:
我想比较python中的字典。我知道我可以简单地做a == b,如果a 和b 是字典。这也适用于嵌套字典,其中 a 和 b 包含字典本身。但是,如果 a 和 b 包含 size>1 的 numpy 数组,则它不起作用:
import numpy as np
a = {"1": np.array([1, 2])}
b = {"1": np.array([1, 2])}
a == b
我收到此错误:
回溯(最近一次通话最后一次):
文件“”,第 1 行,在
ValueError:具有多个元素的数组的真值不明确。使用 a.any() 或 a.all()
我确实检查了:this post 并从 sumbudu 中找到了 import deepdiff 的建议,这符合我的要求。但是,有没有更简单的方法使用== 并以某种方式捕获错误?
【问题讨论】:
-
他们确定只有一层吗?
-
看看上面重复的最后一个答案。
标签: python-3.x numpy dictionary compare