gpt4 book ai didi

python - 字典的键可以是一个类的实例吗?

转载 作者:行者123 更新时间:2023-11-28 22:52:38 28 4
gpt4 key购买 nike

假设我有一个 class a,它有函数 __eq__(self,other)。现在我想要一个字典,其中的键是类的实例(以及值数字,但这应该没有什么区别)。然后我得到错误:

unhashable type: 'a'

在文档中它说我应该定义 __eq____cmp__ 以定义 __hash__,但这是不可能的,因为我的课没有可比性!!

如何解决这个问题,伙计们!

编辑:好的,我让它只适用于 _eq__hash_ 方法,但是我还是不确定python在in操作中使用的是hash方法还是_eq_方法(我应该是这样的希望)

最佳答案

documentation说除了 __hash__() 它需要一个 __eq__() or (不是你建议的“and”) __cmp__() 方法。

因此,在您的情况下,定义 __hash__() 方法就足够了。

关于python - 字典的键可以是一个类的实例吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20299368/

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