Python: Elegancko scalaj słowniki z sumą () wartości [duplikat]

To pytanie ma już odpowiedź tutaj:

Czy istnieje jakiś pythonowy sposób łączenia dwóch nagrań (dodawanie wartości dla kluczy pojawiających się w obu)? 18 odpowiedzi

Próbuję scalić dzienniki z kilku serwerów. Każdy dziennik jest listą krotek date, count).date może pojawić się więcej niż raz i chcę, aby wynikowy słownik przechowywał sumę wszystkich zliczeń ze wszystkich serweró

Oto moja próba, z pewnymi danymi, na przykład:

from collections import defaultdict

a=[("13.5",100)]
b=[("14.5",100), ("15.5", 100)]
c=[("15.5",100), ("16.5", 100)]
input=[a,b,c]

output=defaultdict(int)
for d in input:
        for item in d:
           output[item[0]]+=item[1]
print dict(output)

Co daje

{'14.5': 100, '16.5': 100, '13.5': 100, '15.5': 200}

Zgodnie z oczekiwaniami

Zaraz pójdę na banany z powodu kolegi, który widział kod. Podkreśla, że musi istnieć bardziej Pythoński i elegancki sposób na zrobienie tego, bez tych zagnieżdżonych dla pętli. Jakieś pomysły

questionAnswers(4)

yourAnswerToTheQuestion