Nov. 9, 2009
10:51 p.m.
Mark Dickinson wrote:
That's because you're creating two different float nans. Compare with:
Python 3.2a0 (py3k:76132M, Nov 6 2009, 14:47:39) [GCC 4.2.1 (SUSE Linux)] on linux2 Type "help", "copyright", "credits" or "license" for more information.
nan = float('nan') d = {nan: 10, 0: 20} nan in d True d[nan] 10
This also suggests to me that nan should be a singleton, or at least that the doc should recommend that programs should make it be such for the program. tjr