Мне нужно объединить два списка словарей на основе определенных ключей, иначе нужно добавить
Я сгенерировал свой список словарей, используя приведенный ниже код, и я работаю, как и ожидалось, моя главная проблема - когда я пытаюсьобъединить два разных списка, если найден один и тот же ключ, тогда мне нужно добавить это значение на основе ключа словаря.
feed_mapping = {'BC': 11, 'HA':12, 'AB':16,'GR':18}
L = ["AB-24519152","BC-24519152"]
years_dict = dict()
l1 = []
for line in L:
feed_id = feed_mapping[line.split('-')[0]]
if feed_id in years_dict:
# append the new number to the existing array at this slot
years_dict[feed_id].append(line)
else:
# create a new array in this slot
years_dict[feed_id] = [line]
for element,values in years_dict.items():
l1.append({"id":values,"feed":element})
print(l1)
l1= [{'id': ['AB-23473427','AB-99999'], 'feed': 16}, {'id': ['HA-4848231'], 'feed': 12}]
l2 = [{'id': ['AB-23473427'], 'feed': 14}, {'id': ['HA-4848231'], 'feed': 12}]
Ожидаемый результат:
[{'id': ['AB-23473427','AB-99999'], 'feed': 16}, {'id': ['HA-4848231','HA-4848231'], 'feed': 12},{'id': ['AB-23473427'], 'feed': 14}]