猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
Python中的hash函数背后的__hash__和散列函数是一回事吗?
请问Python中的hash函数背后的__hash__和散列函数是一回事吗?只有可散列的对象可以调用hash(),那么可散列的对象是怎么定义的?感激不尽!!
梦里花落0921
浏览 535
回答 2
2回答
慕码人2483693
请问Python中的hash函数背后的__hash__和散列函数是一回事吗?不是。那么可散列的对象是怎么定义的?定义一个“类”的__hash__方法。有没有朋友知道
0
0
0
喵喵时光机
如果一个对象是可散列的,那么在这个对象的生命周期中,它的散列值是不变的,而且这个对象需要实现__hash()__方法。另外可散列对象还要有__eq()__方法,这样才能跟其他键做比较。如果两个可散列象是相等的,那么它们的散列值一定是一样的。原子不可变数据类型(str、bytes和数值类型)都是可散列类型,frozenset也是可散列的,因为根据其定义,frozenset里只能容纳可散列类型。元组的话,只有当一个元组包含的所有元素都是可散列类型的情况下,它才是可散列的.__hash__是用来计算一个对象的散列值。
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
JavaScript
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续