我有一个像这样的Python列表:
user = [
{'name': 'ozzy', 'quantity': 5},
{'name': 'frank', 'quantity': 4},
{'name': 'ozzy', 'quantity': 3},
{'name': 'frank', 'quantity': 2},
{'name': 'james', 'quantity': 7},
]
我正在尝试编写代码,将具有相同名称的字典连接在一起,并同时添加数量。最终列表如下:
user = [
{'name': 'ozzy', 'quantity': 8},
{'name': 'frank', 'quantity': 6},
{'name': 'james', 'quantity': 7}
]
我尝试了一些方法,但是我很难得到正确的代码。下面的代码有点在添加值(实际上我的列表要长得多,我只是添加了一小部分作为参考)。
newList = []
quan = 0
for i in range(0,len(user)):
originator = user[i]['name']
for j in range(i+1,len(user)):
if originator == user[j]['name']:
quan = user[i]['quantity'] + user[j]['quantity']
newList.append({'name': originator, 'Quantity': quan})
请问您能否帮我获取正确的代码?