【发布时间】:2017-10-10 01:47:39
【问题描述】:
这行得通
range(50)[np.asarray(10)]
这行得通
{}.get(50)
这不是因为unhashable type: 'numpy.ndarray'
{}.get(np.asarray(50))
__hash__ 没有针对这种情况实施吗?
【问题讨论】:
-
如果您想实际执行此操作,请参阅此问题:stackoverflow.com/questions/16589791/… 但这不是您问题的答案,为什么?
-
hash也没有为list实现(也不是dict)。它是为不可变的tuple实现的。即使[50]也是如此。字典的key必须是不可变的。数组或列表的索引可以是可变数字。通常scalar ndarrays没有那么有用,除了作为多维数组的副产品。
标签: numpy