TypeError: unhashable type: 'dict'不支持哈希类型

写网格搜索算法的时候出现了

TypeError: unhashable type: ‘dict’

错误

如下图:
在这里插入图片描述
网上查询后,知道了错误原因:list 不使用 hash 值进行索引,故其对所存储元素没有可哈希的要求;set / dict 使用 hash 值进行索引,也即其要求欲存储的元素有可哈希的要求。Python不支持dict的key为list或dict类型,因为list和dict类型是unhashable(不可哈希)的

修改:只需将"{ }“改为”( )"即可

修改后的代码如下:

param_grid=(
    {
        'weights':['uniform'],
        'n_neighbors':[i for i in range(1,11)]
    },
    {
        'weights':['distance'],
        'n_neighbors':[i for i in range(1,11)],
        'p':[i for i in range(1,6)]
    }
)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章