Encontrando duplicados en una lista de listas.
Estoy usando Python 2.7 y estoy tratando de desduplicar una lista de listas y fusionar los valores de los duplicados.
Ahora mismo tengo:
original_list = [['a', 1], ['b', 1], ['a', 1], ['b', 1], ['b', 2], ['c', 2], ['b', 3]]
Quiero hacer coincidir el primer elemento de cada lista anidada y luego agregar los valores del segundo elemento. Quiero terminar con esto (el orden de la lista final no importa):
ideal_output = [['a', 2], ['b', 7], ['c', 2]]
Hasta ahora tengo algo de código que me encontrará los valores duplicados según el primer elemento de cada lista anidada:
for item in original_list:
matches = -1
for x in original_list:
if (item[0] == x[0]):
matches += 1
if matches >= 1:
if item[0] not in duplicates_list:
duplicates_list.append(item[0])
Desde aquí necesito buscar todos los elementos duplicados_list que están en original_list y sumar los valores, pero no estoy seguro de cuál es la mejor manera de hacerlo.