Dans la mesure où par défaut __eq__ teste sur l'identité, tu ne pouvais donc de toute façon pas avoir une réalisation de ton test d'égalité
Ben j'aimerais bien connaître tes réglages, parce que moi je la vois la différence
Code :
>>> 1.6 1.6000000000000001 >>> 2.4 2.3999999999999999 >>> a, b = divmod(2.5, 0.8) >>> a 3.0 >>> b 0.099999999999999867 >>> a*0.8 2.4000000000000004 >>>
|
Il faut le surdéfinir en testant sur un epsilon dans ce cas, donner simplement (self.x == other.x and self.y == other.y) ne passera pas si tu restes en floating point (avec Decimal ça marcherait par contre, c'est du Fixed Point)
Message édité par masklinn le 29-04-2006 à 16:32:22
---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody