[Python-Dev] Why is nan != nan? (original) (raw)

Raymond Hettinger raymond.hettinger at gmail.com
Fri Mar 26 01:00:03 CET 2010


On Mar 25, 2010, at 4:21 PM, Georg Brandl wrote:

Am 25.03.2010 22:45, schrieb Greg Ewing:

Georg Brandl wrote:

Thinking of each value created by float('nan') as a different nan makes sense to my naive mind, and it also explains nicely the behavior present right now.

Not entirely: x = float('NaN') y = x if x == y: ... There it's hard to argue that the NaNs being compared result from different operations. It does suggest a potential compromise, though: a single NaN object compares equal to itself, but different NaN objects are never equal (more or less what dict membership testing does now, but extended to all == comparisons). Whether that's a sane compromise I'm not sure. FWIW, I like it. Georg

+1

Raymond



More information about the Python-Dev mailing list