results = {}
expectedResults = {}
results['a'] = 3
results['b'] = [1, 2]
results['c'] = '2A 04 73 74'
expectedResults['a'] = 3
expectedResults['b'] = [1, 2]
expectedResults['c'] = '2A 04 73 74'
compare = dict(set(results.items())-set(expectedResults.items()))
print(str(compare))
我得到以下错误。 TypeError:列表对象不可处理
我使用下面的compare,以便在print语句中显示unmatchedkey:value对(如果有的话)。你知道吗
compare = dict(set(results.items())-set(expectedResults.items()))
你得到这个错误是因为当你呼叫结果.项目(),它返回一个不可哈希的列表。
使代码正常工作的一个简单方法是遍历每个dict项并检查其相等性
你不可能得到这么简单的解决方案。你知道吗
如果列表是字典中唯一不可修改的类型,则可以创建用于将列表转换为元组的比较的字典:
输出:
你可以利用difflib来找出不同。你知道吗
检查字符串之间的差异
输出:
相关问题 更多 >
编程相关推荐