Python:如何比较两个词典列表

hel*_*arn 3 python

伙计们,相对于python的n00b,试图找出两个字典列表的差异.

如果这些只是常规列表,我可以创建集合,然后执行' - '/ intersect操作.

但是,set操作不适用于词典列表:

>>> l = []
>>> pool1 = {}
>>> l.append(pool1)
>>> s = set(l)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unhashable type: 'dict'
Run Code Online (Sandbox Code Playgroud)

S.L*_*ott 5

你需要一个"hashable"字典.

items()属性是元组列表.使这个成为一个tuple()你有一个可用的字典版本.

tuple( sorted( some_dict.items() ) )
Run Code Online (Sandbox Code Playgroud)