哈希

http://icejoywoo.github.io/2019/03/16/python-unhashable-type-error.html

 google:  TypeError: unhashable type

为什么这三个类型是不支持哈希的?从哈希计算的方法上我们可以知道,对于可变的类型计算哈希值是不可靠的,当数据发生变化时哈希值也要变化。哈希计算的意义在于用哈希值来区分变量,哈希值会随着变量内容而变化,所以对于这类可变类型来说,不支持哈希值是合理的。

 

https://blog.csdn.net/pyufftj/article/details/72366631

为什么 list 是不可哈希的,而 tuple 是可哈希的

  • (1)因为 list 是可变的在它的生命期内,你可以在任意时间改变其内的元素值。

  • (2)所谓元素可不可哈希,意味着是否使用 hash 进行索引

  • (3)list 不使用 hash 进行元素的索引,自然它对存储的元素有可哈希的要求;而 set 使用 hash 值进行索引。

posted on 2019-10-09 16:52  cdekelon  阅读(68)  评论(0)    收藏  举报

导航