因此,使用id
作爲臨時字典。這會過濾出重複項。 的字典的values()
將是列表
在Python2.7
>>> L=[
... {'id':1,'name':'john', 'age':34},
... {'id':1,'name':'john', 'age':34},
... {'id':2,'name':'hanna', 'age':30},
... ]
>>> {v['id']:v for v in L}.values()
[{'age': 34, 'id': 1, 'name': 'john'}, {'age': 30, 'id': 2, 'name': 'hanna'}]
在Python3
>>> L=[
... {'id':1,'name':'john', 'age':34},
... {'id':1,'name':'john', 'age':34},
... {'id':2,'name':'hanna', 'age':30},
... ]
>>> list({v['id']:v for v in L}.values())
[{'age': 34, 'id': 1, 'name': 'john'}, {'age': 30, 'id': 2, 'name': 'hanna'}]
在的python2.5/2.6
>>> L=[
... {'id':1,'name':'john', 'age':34},
... {'id':1,'name':'john', 'age':34},
... {'id':2,'name':'hanna', 'age':30},
... ]
>>> dict((v['id'],v) for v in L).values()
[{'age': 34, 'id': 1, 'name': 'john'}, {'age': 30, 'id': 2, 'name': 'hanna'}]
如何廣泛的是這些字典?你需要單獨的屬性檢查來確定重複項,還是檢查其中的單個值是否足夠? –
這些字符有8個關鍵:值對,列表中有200個字符。他們實際上得到了一個ID,如果發現ID值是重複的,我可以從列表中刪除字典。 – Limaaf
[How to make values in dictionary list is unique?](http://stackoverflow.com/questions/31792680/how-to-make-values-in-list-of-dictionary-unique) – Abhijeet