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 thatnan = float('nan') a = [1, ..., 499, nan, 501, ..., 999] # meta-ellipsis, not Ellipsis a == aFalse ??
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 expecta = [1, ..., 499, float('nan'), 501, ..., 999] b = [1, ..., 499, float('nan'), 501, ..., 999] a == bFalse 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 [email protected] http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com
