TypeError: unhashable type: 'list'

python中list 类型不使用 hash 值进行索引,故其对所存储元素没有可哈希的要求;而set / dict类型 使用 hash 值进行索引,也即其要求欲存储的元素有可哈希的要求。Python不支持dict的key为list或dict类型,因为list和dict类型是unhashable(不可哈希)的。

举个可能会遇到的错误:要统计dataframe的某列中所有元素出现的次数时,大家可能会想到以下方法来统计:

List=df3["Alarm_Z"].values.tolist()

a = {}
for i in List:
    a[i] = List.count(i)
print (a)

但是,直接运行就会提示如题所示的错误,原因时.values.tolist()方法得到的list中的元素也是list类型,不能用作dict的key。

大家使用时要注意!

发布了88 篇原创文章 · 获赞 14 · 访问量 9645

猜你喜欢

转载自blog.csdn.net/sunmingyang1987/article/details/103538255