首页 > 解决方案 > 从具有相同键值的dict列表中查找最后一个索引

问题描述

我有这样的python中的dict列表

list_qty = [{'id':1,'qty': '10'},{'id':1,'qty': '15'},{'id':2,'qty': '7'},{'id':2,'qty': '20'},{'id':2,'qty': '30'}]

我想从具有相同 idlast index的 dict中获取list_qty

我想要的输出是:

list_qty2 = [{'id':1,'qty': '15'},{'id':2,'qty': '30'}]

任何人都可以帮助我吗?

标签: pythonlistdictionary

解决方案


Python 中的 Dict 更新相同键的值。所以你可以尝试这样的事情:

Python 3.x

list_qty = [{'id':1,'qty': '10'},{'id':1,'qty': '15'}, {'id':2,'qty': '7'},{'id':2,'qty': '20'},{'id':2,'qty': '30'}]
list_qty2=list({v['id']:v for v in list_qty}.values())
print(list_qty2)

[{'id': 1, 'qty': '15'}, {'id': 2, 'qty': '30'}]

蟒蛇 2.7

list_qty = [{'id':1,'qty': '10'},{'id':1,'qty': '15'}, {'id':2,'qty': '7'},{'id':2,'qty': '20'},{'id':2,'qty': '30'}]
list_qty2={v['id']:v for v in list_qty}.values()
print list_qty2

[{'id': 1, 'qty': '15'}, {'id': 2, 'qty': '30'}]

推荐阅读