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
Libérer: 2024-11-27 21:45:12
original
891 Les gens l'ont consulté

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}")
Copier après la connexion

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",
    }
}
Copier après la connexion

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
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal