Bonjour,
Je souhaiterai créé un arbre "dynamiquement" et ne sais pas trop comment m'y prendre.
Mon but est de modéliser une forêt en partant des éléments les plus gros, jusqu'au plus fin, sans savoir à l'avance leur nombre.
Je m'explique, je commence pas définir les arbres et leurs attributs propre, puis leurs branches, puis les feuilles etc...
Pour cela j'ai pensé créé des classes pour chacun des éléments et faire des liens entre elles
Mon but est ensuite de pouvoir accéder simplement aux éléments de chaque arbre depuis le main, puis faire quelque chose de la forme :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 class arbre: def __init__(self,nb_de_branche): self.carac1 = 1 self.carac2 = 1 self.branche = branches() # probleme : comment cree x branche et qu'on puisse recuperer facilement leurs attributs class branche: def __init(self): self.carac11 = 11 self.carac22 = 22
J'ai essayé avec un dictionnaire mais je ne vois pas comment récupérer simplement ensuite les caractéristiques qui m'intéressent (dans une boucle en changeant de branche).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 baobab = arbre(8) A = MaFonction(baobab.branche5.carac11, baobab.carac2) #on prend en argument de fonction des caracteristique de l'arbre et de sa branche numero 5
J'ai essayé aussi avec :
Mais ça ne marche pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 class arbre: def __init__(self,nb_de_branche): self.carac1 = 1 self.carac2 = 1 for i in range(nb_de_branche): name = 'self.branche{}'.format(i+1) value = branches() locals()[name] = value
De même, je ne vois pas trop comment avoir ensuite un nom de variable qui change d'indice dans une boucle for dans mon main
Pouvez m'indiquer s'il y a une meilleur manière de faire ou comment résoudre mon problème?
Merci d'avance !![]()
Partager