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

Robert Kern robert.kern at gmail.com
Mon Mar 29 16:41:58 CEST 2010


On 2010-03-29 01:17 AM, David Cournapeau wrote:

On Sun, Mar 28, 2010 at 9:28 AM, Robert Kern<robert.kern at gmail.com> wrote:

On 2010-03-27 00:32 , David Cournapeau wrote:

On Sat, Mar 27, 2010 at 8:16 AM, Raymond Hettinger <raymond.hettinger at gmail.com> wrote:

On Mar 26, 2010, at 2:16 PM, Xavier Morel wrote: How about raising an exception instead of creating nans in the first place, except maybe within specific contexts (so that the IEEE-754 minded can get their nans working as they currently do)? -1 The numeric community uses NaNs as placeholders in vectorized calculations. But is this relevant to python itself ? In Numpy, we indeed do use and support NaN, but we have much more control on what happens compared to python float objects. We can control whether invalid operations raises an exception or not, we had isnan/isfinite for a long time, and the fact that nan != nan has never been a real problem AFAIK. Nonetheless, the closer our float arrays are to Python's float type, the happier I will be. Me too, but I don't see how to reconcile this with the intent of simplifying nan handling because they are not intuitive, which seems to be the goal of this discussion.

"Do nothing" is still on the table, I think.

-- Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma that is made terrible by our own mad attempt to interpret it as though it had an underlying truth." -- Umberto Eco



More information about the Python-Dev mailing list