Python – Merge Dictionaries List with duplicate Keys

When it is required to merge dictionaries list with duplicate keys, the keys of the strings are iterated over and depending on the condition, the result is determined.


Below is a demonstration of the same

my_list_1 = [{"aba": 1, "best": 4}, {"python": 10, "fun": 15}, {"scala": "fun"}]

my_list_2 = [{"scala": 6}, {"python": 3, "best": 10}, {"java": 1}]

print("The first list is : ")
print("The second list is : ")
for i in range(0, len(my_list_1)):

   id_keys = list(my_list_1[i].keys())
   for key in my_list_2[i]:

      if key not in id_keys:
         my_list_1[i][key] = my_list_2[i][key]

print("The result is : " )


The first list is :
[{'aba': 1, 'best': 4}, {'python': 10, 'fun': 15}, {'scala': 'fun'}]
The second list is :
[{'scala': 6}, {'python': 3, 'best': 10}, {'java': 1}]
The result is :
[{'aba': 1, 'best': 4, 'scala': 6}, {'python': 10, 'fun': 15, 'best': 10}, {'scala': 'fun', 'java': 1}]


  • Two list of dictionaries are defined and displayed on the console.

  • The list of dictionary is iterated over and the keys are accessed.

  • These keys are stored in a variable.

  • The second list of dictionary is iterated over, and if the keys in this are not present in the previous variable, the specific keys from both the lists are equated.

  • The result is displayed on the console.