Travailler en python Je souhaite extraire un jeu de données avec la structure suivante:Récursif? en boucle sur n niveaux en Python
Chaque élément a un identifiant unique et l'identifiant unique de son parent. Chaque parent peut avoir un ou plusieurs enfants, dont chacun peut avoir un ou plusieurs enfants, à n niveaux, c'est-à-dire que les données ont une structure arborescente retournée. Alors qu'il a le potentiel de continuer à l'infini, en réalité, une profondeur de 10 niveaux est inhabituel, tout comme avoir plus de 10 frères et soeurs à chaque niveau.
Pour chaque élément de l'ensemble de données que je souhaite afficher, affichez tous les éléments pour lesquels cet élément est leur parent ... et ainsi de suite jusqu'à ce qu'il atteigne le bas de l'ensemble de données.
Faire les deux premiers niveaux est facile, mais je ne sais pas comment le rendre efficacement à travers les niveaux.
Tous les pointeurs très appréciés.
Ai-je raison de penser que cela retournerait une grande liste d'articles qui étaient les descendants d'un élément donné, de tous niveaux, mais que vous perdriez la structure de l'ensemble de données? – notreadbyhumans
Donc, c'est la même chose que cette compréhension de liste d'une ligne: "def getChildren (item): return [getChildren (child) pour enfant dans allItems si child.parent == item]" Je n'ai jamais vu une compréhension de liste avec récursion avant. – hughdbrown