File "/Users/quentinbauw/Desktop/Martin/Académique/Info S1 Saphire/Blupon.py", line 41, in __init__
Graphe.__init__(self,tuple)
File "/Users/quentinbauw/Desktop/Martin/Académique/Info S1 Saphire/Blupon.py", line 11, in __init__
self.nom=tupleEntree[0]
TypeError: 'type' object is not subscriptable
Il me semble que ce serait un problème d'héritage non pris en compte, le problème étant causé à la ligne d'appel de la classe Chemin dans la classe Graphe, c'est effectivement la première fois que je suis face à cette notion
C'est normal car Chemin est dérivé de Graphe. Et dans le __init__ de Chemin, tu appelles le __init__ de Graphe avec comme argument tuple. Autrement dit, cet argument prend la place du paramètre tupleEntree (dans ta classe Graphe). Et dans cette classe tu fais:
self.nom=tupleEntree[0]
#Donc c'est comme si tu faisait
self.nom = tuple[0] #Çe qui renvoie ton erreur
PS: J'en suis pas sûr, mais appeler une classe fille (Chemin) dans la classe mère (Graphe) me semble risqué (appel circulaire, à confirmer)
Donc avec le code de ta ligne 41, ça correspond à faire:
self.nom = tuple[0] #tuple est un type. Ça te renvoie forcément une erreur
La question à se poser est de savoir si Chemin a vraiment besoin d'hériter de Graphe (j'en vois pas l'intérêt dans ton code)??
Précepte: Le mieux est l'ennemi du bien
POO - héritage
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.