Ich versuche, alle Zahlen zu summieren, die unter „Umsatz“ im folgenden Wörterbuch fallen:reduzieren Nested Wörterbuch
{'a': {'sales': {}, 'revenue': {}}, 'b': {'sales': {}, 'revenue': {}}, 'c': {'sales': {'February2017': 6240.0, 'March2017': 8869.75, 'January2017': 15720.0}, 'revenue': {'February2017': 312.0, 'March2017': 432.4, 'January2017': 786.0}}, 'd': {'sales': {'February2017': 4184.9, 'March2017': 6181.709999999999, 'January2017': 6080.55}, 'revenue': {'February2017': 188.86, 'March2017': 292.61, 'January2017': 273.45}}}
#
Die Ausgabe sollte sein: 6240 + 8869,75 + 15720 + 4184,9 + 6181,7099 + 6080,55
Ich bin in der Lage, nacheinander durch die Tasten zu schalten und die richtige Antwort zu bekommen, aber gibt es einen effizienteren Weg dies zu tun?
total_sum = 0
for key,value in dict.items():
for key_a, value_a in value['sales'].items():
total_sum += value_a
Zum Beispiel ist es eine Möglichkeit, dies wie reduce
durch Verwendung etwas tun kann?
Dank
Das ist großartig, danke. –
@Bleh Sie sollten wissen, dass diese Lösung für die Daten fest ist, die Sie angegeben haben. Wenn Ihre Daten die gleiche Struktur haben, dann ist das in Ordnung. Aber wenn es zufällig und willkürlich ist, fordere ich Sie auf, auf meinen zu schauen. –
@ cᴏʟᴅsᴘᴇᴇᴅ nicht sicher, was Sie meinen, sieht aus wie monatliche Umsatzdaten unter dem 'Verkauf'-Schlüssel. Rekursion scheint für einen strukturierten Datensatz übertrieben zu sein und erschwert die OP-Frage unnötig. – AChampion