gpt4 book ai didi

python - 为什么 sets,dicts,list 在 python 中是不可散列的

转载 作者:太空宇宙 更新时间:2023-11-03 13:38:29 25 4
gpt4 key购买 nike

不可哈希到底是什么意思?

>>> a={1,2,3}
>>> b={4,5,6}
>>> set([a,b])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unhashable type: 'set'
>>>

谁能说出错误到底是什么?我还可以在 python 中将集合添加到另一个集合中吗?

最佳答案

没有 __hash__() 的对象名为 unhashable 的属性。 Python 文档已经很好地描述了原因:

If a class defines mutable objects and implements an __eq__() method, it should not implement __hash__(), since the implementation of hashable collections requires that a key’s hash value is immutable (if the object’s hash value changes, it will be in the wrong hash bucket).

关于python - 为什么 sets,dicts,list 在 python 中是不可散列的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35811046/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com