Bonjour,
Je bosse actuellement sur un projet en python 2.7
Grosso modo : J'ai la classe Foo qui hérite de Bar. Dans Bar, j'ai une fonction Action() qui fais une action. Dans Foo, j'ai besoin de Action() écrite dans Bar() avec un petit truc en plus.
Sachant que j'appel Foo.Action(), comment faire les deux actions dont j'ai besoin, sans modifier le Action() qui est dans Foo ?
J'ai fais ça :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | class Foo(): def Action(self): print "Titi" #Idée numéro 1 : class Bar(Foo): def Action(self): print "Toto" Foo.Action() #Idée numéro 2 : class Bar(Foo): def Action(self): print "Toto" super(Bar, self).Action() var = Bar() var.Action()#Doit afficher "Toto\nTiti" |
Erreur de l'idée n°1 : TypeError: unbound method Action() must be called with Foo instance as first argument (got int instance instead)
Erreur de l'idée n°2 : TypeError: must be type, not classobj
J'espère que j'ai correctement expliqué le problème. Cordialement, Kr0stAr
+0
-0