Aktualisieren verschachtelter Wörterbücher mit variabler Tiefe
Sie stoßen auf ein Dilemma, wenn Sie versuchen, ein verschachteltes Wörterbuch (Wörterbuch1) mit den Inhalten eines anderen Wörterbuchs zu aktualisieren (Update) unter Beibehaltung bestimmter Werte in der verschachtelten Struktur. Konkret möchten Sie den Schlüssel „level2“ in Wörterbuch1 aktualisieren, ohne den Wert „levelA“ zu überschreiben.
Um dieser Herausforderung zu begegnen, wird eine rekursive Lösung vorgeschlagen. Der folgende Python-Code implementiert diesen Ansatz:
def merge_dicts(dict1, dict2): for key in dict2: if key in dict1 and isinstance(dict1[key], dict) and isinstance(dict2[key], dict): merge_dicts(dict1[key], dict2[key]) else: dict1[key] = dict2[key]
Diese Funktion durchläuft rekursiv beide Wörterbücher und aktualisiert Werte basierend auf den folgenden Regeln:
Mit diesem rekursiven Ansatz können Sie verschachtelte Wörterbücher ändern Wörterbücher unterschiedlicher Tiefe unter Beibehaltung spezifischer Werte.
Das obige ist der detaillierte Inhalt vonWie aktualisiere ich verschachtelte Wörterbücher mit variabler Tiefe und behalte dabei bestimmte Werte bei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!