首页 > 解决方案 > 合并列表中具有相同键的字典

问题描述

我有一个字典列表:

bids_copy = [{'price': 1, 'quantity': 2}, {'price': 1, 'quantity': 5}, {'price': 2, 'quantity': 6}, {'price': 2, 'quantity': 2}]
bids_snapshot = []

我需要用相同的键连接所有字典,如下所示:

print(bids_snapshot)
---> [{'price': 1, 'quantity': 7}, {'price': 2, 'quantity': 8}]

我写了一个不能按我想要的方式工作的函数:

    iteration = 0
    for order in bids_copy:
        bids_snapshot.append(order)
        if iteration == 0:
            iteration += 1
            continue
        else:

            for snap_order in bids_snapshot:
                if snap_order['price'] == order['price']:
                    snap_order['quantity'] += order['quantity']
                    del bids_snapshot[:-1]

请帮忙,第三天我一直无法解决这个问题。

标签: pythonpython-3.x

解决方案


推荐阅读