Bonjour à Tous,
après avoir consulté la FAQ,
je tente de surclasser un Float (à ma façon !!!!) en lui ajoutant des arguments


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
class Val(float):
    def __new__(self,n,Case=None,Z=0,Type="Max"):
	self.Case=Case
	self.Z=Z
        return float.__new__(self,n)
 
 
 
>>> toto=Val(4,5,3)
>>> print toto,toto.Case,toto.Z
4.0 5 3
# jusque la, tous va bien !!!
par contre si je j'instance un nouvel objet :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
>>> titi=Val(55,"d","f")
>>> print titi,titi.Case,titi.Z
55.0 d f
Cela marche toujours, mais ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
>>> print toto,toto.Case,toto.Z
4.0 d f
le premier n'est plus bon .....

Si quelqu'un peut m'expliquer .... je pensai avoir correctement encapsulé mes données ...