【发布时间】:2011-09-20 11:24:39
【问题描述】:
谁能向我解释以下行为?
>>> import numpy as np
>>> {np.nan: 5}[np.nan]
5
>>> {float64(np.nan): 5}[float64(np.nan)]
KeyError: nan
为什么它在第一种情况下有效,而在第二种情况下无效? 此外,我发现以下确实有效:
>>> a ={a: 5}[a]
float64(np.nan)
【问题讨论】:
-
这将永远是真的:
float('nan') != float('nan')