On 4/27/2011 7:31 PM, Stephen J. Turnbull wrote:
Glenn Linderman writes:
> I would not, however expect the original case that was described:
> >>> nan = float('nan')
> >>> nan == nan
> False
> >>> [nan] == [nan]
> True # also True in tuples, dicts, etc.
Are you saying you would expect that
nan = float('nan')
a = [1, ..., 499, nan, 501, ..., 999] # meta-ellipsis, not Ellipsis
a == a
False
??
Yes, absolutely. Once you understand the definition of NaN, it
certainly cannot be True. a is a, but a is not equal to a.
I wouldn't even expect
a = [1, ..., 499, float('nan'), 501, ..., 999]
b = [1, ..., 499, float('nan'), 501, ..., 999]
a == b
False
but I guess I have to live with that.<wink> While I wouldn't apply it
to other people, I have to admit Raymond's aphorism applies to me (the
surprising thing is not the behavior of NaNs, but that I'm surprised
by anything that happens in the presence of NaNs!)
The only thing that should happen in the presence of NaNs is more NaNs :)
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com