Maison >développement back-end >Tutoriel Python >Comment puis-je parcourir de manière récursive des dictionnaires imbriqués en Python ?

Comment puis-je parcourir de manière récursive des dictionnaires imbriqués en Python ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-27 21:45:12899parcourir

How Can I Recursively Iterate Through Nested Dictionaries in Python?

Récursion dans les dictionnaires imbriqués

Pour parcourir toutes les paires clé-valeur d'un dictionnaire, y compris celles des dictionnaires imbriqués, la récursivité est requise. Voici une fonction récursive qui résout ce problème :

def print_nested_dict(d):
    for key, val in d.items():
        if isinstance(val, dict):
            print_nested_dict(val)
        else:
            print(f"{key} : {val}")

Dans cette fonction, nous explorons récursivement le dictionnaire :

  • Si la valeur est un autre dictionnaire, la fonction s'appelle avec cela dictionnaire.
  • Sinon, il imprime la valeur-clé paire.

Exemple d'utilisation :

Considérez le dictionnaire suivant :

d = {
    "xml": {
        "config": {
            "portstatus": {"status": "good"},
            "target": "1",
        },
        "port": "11",
    }
}

L'appel de print_nested_dict(d) imprimera la sortie suivante :

xml : {config: {portstatus: {status: good}, target: 1}, port: 11}
config : {portstatus: {status: good}, target: 1}
portstatus : {status: good}
target : 1
port : 11

Cette méthode parcourt efficacement tous les niveaux de dictionnaires imbriqués, offrant une vue complète de la structure des données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn