Ich habe Probleme beim Verständnis von verschachtelten Wörterbuch-Comprehensions in Python 3. Das Ergebnis, das ich aus dem folgenden Beispiel bekomme, gibt die korrekte Struktur ohne Fehler aus, aber enthält nur eine der inneren Schlüssel: Wert-Paare. Ich habe kein Beispiel für ein verschachteltes Wörterbuchverständnis gefunden. Googling "Nested Dictionary Comprehension Python" zeigt Legacy-Beispiele, nicht verschachtelte Comprehensions oder Antworten, die mit einem anderen Ansatz gelöst wurden. Ich verwende möglicherweise die falsche Syntax.Nested Wörterbuch Verständnis Python
Beispiel:
data = {outer_k: {inner_k: myfunc(inner_v)} for outer_k, outer_v in outer_dict.items() for inner_k, inner_v in outer_v.items()}
Dieses Beispiel sollte das ursprüngliche Wörterbuch zurück, sondern mit dem inneren Wert von myfunc
modifiziert.
Struktur des outer_dict Wörterbuch sowie das Ergebnis:
{outer_k: {inner_k: inner_v, ...}, ...}
Vielen Dank - wenn das jemandem hilft, hier ist ein Punkt, der mich verwirrte: Blenders Lösung hat zwei Änderungen von meinem Ex: eine bewegte Klammer, und setzen das innere 'für' vor dem äußeren. Ich hatte ursprünglich die for-Klausel richtig gesetzt, aber mit der Klammer an der falschen Stelle, wurde "NameError: globaler Name 'äußere_v" ist nicht definiert. "Dann der gleiche Fehler mit der' for 's an der falschen Stelle mit der Klammer in der richtiger Platz –