会员
周边
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
小小张说故事
博客园
首页
新随笔
联系
订阅
管理
2026年11月10日
Python 里为什么改了 __eq__ 就进不了集合:拆开 __hash__、可哈希契约与可变 key 陷阱
摘要: 一句话结论:只要你在类里定义了 __eq__ 而没显式定义 __hash__,CPython 会把 __hash__ 直接设成 None,实例立刻变成「不可哈希」,放进 set 或当 dict 键都会抛 TypeError: unhashable type。这不是 bug,是语言在替你守住一条契约:
阅读全文
posted @ 2026-11-10 10:26 小小张说故事
阅读(3)
评论(0)
推荐(0)
公告