Bonjour,
Je m'inscris aujourd'hui car en temps normal, je trouve des sujets de problèmes similaires afin de résoudre les miens. Cependant, je ne trouve pas de solution à mon problème. (peut-être que j'ai mal cherché car je ne pense pas être le premier avec ce probleme)

J'ai fait un petit code rapide afin de rendre compte de mon probleme.
(le probleme porte sur un projet plus conséquent, mais il est identique)

classe mere :
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
21
22
23
24
25
26
27
class mere(object):
    _num=0
    __default_params = {
                     "num" : "",
                     "nom" : "",
                     "prenom": "",
                     "type" : ""}
    __num = None
    __nom = None
    __prenom = None
    __type = None
 
 
    def __init__(self,nom,prenom,type):
        aux = {"num":self._num,"nom":nom,"prenom":prenom,"type":type}
        self.__default_params.update(aux)
        self.__num = self._num
        self.__nom = nom
        self.__prenom = prenom
        self.__type = type
 
    def pr(self):
        print self.__default_params,
        print self.__nom,
        print self.__num,
        print self.__prenom,
        print self.__type
classes filles :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
from mere import mere
class fille1(mere):
    _num = "1"
 
class fille2(mere):
    _num = "2"
et mon main :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
from fille import fille1
from fille import fille2
 
if __name__ == '__main__':
    f1 = fille1("name1","firstname1","type1")
    f2 = fille2("name2","firstname2","type2")
 
    f1.pr()
    f2.pr()
le resultat obtenu :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
{'nom': 'name2', 'prenom': 'firstname2', 'num': '2', 'type': 'type2'} name1 1 firstname1 type1
{'nom': 'name2', 'prenom': 'firstname2', 'num': '2', 'type': 'type2'} name2 2 firstname2 type2
Voila, comme vous pouvez le voir, les attributs "normaux" sont bons.
Par contre, le dictionnaire est toujours celui créé par la derniere instance créée.

Quelqu'un aurait-il une idée/solution d'où vient le problème?

Merci d'avance