Bonjour

Dans une classe dérivée, je souhaite "surcharger" une propriété de la classe parente.
Pour définir la propriété dans la classe dérivée, j'ai besoin d'accéder à la propriété de la classe parente (mon cas réel est moins simpliste que l'exemple ci-dessous !).

Je n'y suis arrivé qu'en utilisant la fonction property car là, pour le coup, j'appelle une méthode tout bête de la classe mère :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class Mere(object):
 
    def __init__(self,compA,compB):
        self._compA = compA
        self._compB = compB
 
    def get_somme(self):
        return self._compA + self._compB
    somme = property(get_somme)
 
class Fille(Mere):
 
    def __init__(self,compA,compB,compC):
        Mere.__init__(self,compA,compB)
        self._compC = compC
 
    def get_somme_ou_autre_nom(self):
        return Mere.get_somme(self) + self._compC
    somme = property(get_somme_ou_autre_nom)
Est-ce possible de faire quelque chose d'équivalent si, dans la classe parente, la propriété a été définie via le décorateur @property ?
J'ai essayé différentes syntaxes pour utiliser la propriété de la classe parente mais sans succès ...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
class Mere(object):
 
    def __init__(self,compA,compB):
        self._compA = compA
        self._compB = compB
 
    @property
    def somme(self):
        return self._compA + self._compB
 
class Fille(Mere):
 
    def __init__(self,compA,compB,compC):
        Mere.__init__(self,compA,compB)
        self._compC = compC
 
    @property
    def somme(self):
        return  ?????  + self._compC