Ändern Sie die Werte in dict von verschachtelten dicts mit Elemente in eine Liste?

Wie würden Sie ändern/erstellen-Schlüssel/- Werte in einem dict von verschachtelten dicts auf der Grundlage der Werte einer Liste, in der das Letzte Element der Liste ist ein Wert für den dict, und der rest der Elemente, die reefer-keys in dicts?
Das wäre die Liste:

list_adddress = [ "key1", "key1.2", "key1.2.1", "value" ]

Dies wäre nur ein problem in Situationen wie beim Parsen von Kommandozeilen-Argumenten. Es ist offensichtlich, dass das ändern/erstellen dieser Wert in einem script wäre ziemlich einfach mit dict_nested["key1"]["key1.2"]["key1.2.1"]["value"].

Wäre dies ein verschachteltes dict von dicts:

dict_nested = { 
    "key1": {
                "key1.1": { 
                            "...": "...",
                },
                "key1.2": { 
                            "key1.2.1": "change_this",
                },
            },

    "key2": {
                "...": "..."
            },
}

Ich denke, dass in diesem Fall so etwas wie eine rekursive Funktion oder eine Liste Verständnis erforderlich wäre.

def ValueModify(list_address, dict_nested):
    ...
    ...
    ValueModify(..., ...)

Auch, wenn Elemente in list_address würde reefer Schlüssel in die nicht vorhandene Wörterbücher, die Sie erstellt werden soll.

InformationsquelleAutor | 2012-08-12
Schreibe einen Kommentar