Verschachtelte Wörterbücher durchqueren
In diesem Problem haben Sie ein verschachteltes Wörterbuch und möchten alle Schlüssel-Wert-Paare drucken, bei denen der Wert nicht vorhanden ist ein Wörterbuch. Darüber hinaus müssen Sie alle verschachtelten Wörterbücher durchlaufen und ihre Schlüssel-Wert-Paare rekursiv ausgeben.
Sie könnten eine Lösung mit mehreren verschachtelten Schleifen versuchen, aber dieser Ansatz lässt sich nicht skalieren, wenn Sie auf mehr Verschachtelungsebenen stoßen. Der Schlüssel liegt in der Verwendung von Rekursion.
Rekursive Lösung
Innerhalb der Funktion:
Hier ist ein Implementierung:
def myprint(d): for k, v in d.items(): if isinstance(v, dict): myprint(v) else: print("{} : {}".format(k, v))
Verwendung
Um diese rekursive Lösung zu verwenden, übergeben Sie einfach Ihr verschachteltes Wörterbuch an die Funktion myprint. Zum Beispiel:
d = { 'xml': { 'config': { 'portstatus': {'status': 'good'}, 'target': '1' }, 'port': '11' } } myprint(d)
Ausgabe
xml : {'config': {'portstatus': {'status': 'good'}, 'target': '1'}, 'port': '11'} config : {'portstatus': {'status': 'good'}, 'target': '1'} portstatus : {'status': 'good'} status : good target : 1 port : 11
Das obige ist der detaillierte Inhalt vonWie kann ich Schlüssel-Wert-Paare aus einem verschachtelten Wörterbuch in Python rekursiv drucken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!