【发布时间】:2014-12-12 19:04:14
【问题描述】:
我想断言两个 Python 字典是相等的(这意味着:键的数量相等,并且从键到值的每个映射都是相等的;顺序并不重要)。一个简单的方法是assert A==B,但是,如果字典的值为numpy arrays,这将不起作用。如何编写一个函数来检查两个字典是否相等?
>>> import numpy as np
>>> A = {1: np.identity(5)}
>>> B = {1: np.identity(5) + np.ones([5,5])}
>>> A == B
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
编辑 我知道 numpy 矩阵应检查是否与 .all() 相等。我正在寻找的是一种检查此问题的通用方法,而无需检查isinstance(np.ndarray)。这可能吗?
没有numpy数组的相关主题:
【问题讨论】:
标签: python numpy dictionary equality