这是从元组中重新锁定:
>>> from operator import itemgetter>>> from collections import defaultdict>>> data = defaultdict(dict)>>> f = itemgetter('pid', 'sid', 'eid')>>> for d in [*x, *y]:... data[f(d)].update(d)... >>> list(data.values())[{'eid': 123, 'pid': 111, 'sid': 6, 'x_qty': 30, 'y_qty': 123}, {'eid': 6212, 'pid': 222, 'sid': 56, 'x_qty': 2}, {'eid': 6212, 'pid': 333, 'sid': 56, 'y_qty': 112}]


