[Python-Dev] Mixing float and Decimal -- thread reboot
Mark Dickinson
dickinsm at gmail.com
Tue Mar 23 19:04:37 CET 2010
On Tue, Mar 23, 2010 at 5:48 PM, Adam Olsen <rhamph at gmail.com> wrote:
> a = Decimal('nan')
> a != a
>
> They don't follow the behaviour required for being hashable.
What's this required behaviour? The only rule I'm aware of is that if
a == b then hash(a) == hash(b). That's not violated here.
Note that containment tests check identity before equality, so there's
no problem with putting (float) nans in sets or dicts:
>>> x = float('nan')
>>> s = {x}
>>> x in s
True
Mark
More information about the Python-Dev
mailing list