Maison  >  Article  >  développement back-end  >  Comment créer des valeurs par défaut à plusieurs niveaux avec une profondeur variable ?

Comment créer des valeurs par défaut à plusieurs niveaux avec une profondeur variable ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-17 11:04:30956parcourir

How to Create Multi-Level Defaultdicts with Variable Depth?

Création de dictionnaires par défaut multi-niveaux avec une profondeur variable

Lorsque vous travaillez avec des données imbriquées, il peut être difficile de créer des dictionnaires multi-niveaux avec des profondeurs variables. Cette question répond précisément à ce problème, où une grande liste avec des clés hiérarchiques doit être convertie en un dictionnaire imbriqué avec des profondeurs inconnues.

La solution fournie utilise la puissance du defaultdict de Python et de la fonction lambda pour créer un dictionnaire imbriqué récursif. dictionnaire sur demande. La fonction nested_dict = lambda: defaultdict(nested_dict) renvoie un dictionnaire imbriqué qui est par défaut un autre dictionnaire imbriqué si une clé n'est pas trouvée. Cela permet la création dynamique de couches imbriquées selon les besoins.

Dans l'exemple fourni, la variable nest contient une référence au dictionnaire imbriqué récursif. L'affectation suivante nest[0][1][2][3][4][5] = 6 crée un dictionnaire avec des clés imbriquées représentant [0, 1, 2, 3, 4, 5] et attribue la valeur 6. La fonction lambda crée essentiellement une hiérarchie infinie de valeurs par défaut, permettant un accès et une manipulation faciles des données imbriqué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