首页 >后端开发 >Python教程 > 正文

hash()是python内置的吗

原创2019-06-20 10:11:520654
第八期线上培训班

哈希函数hash()是python内置的吗?下面给大家介绍一下哈希函数的相关知识:

hash(object)

如果 object 属于可哈希对象,hash() 函数将返回其哈希值;如果 object 不属于可哈希对象,hash() 函数则会抛出异常。哈希值是一个整数。

相关推荐:《python视频教程》

hash('orca_j35') #> 3721949548176702466
hash([1,2]) #> TypeError: unhashable type: 'list

在查找字典时,会使用哈希值来快速比较字典的键。具有相同哈希值的对象,被字典视作同一个键。

x = (1,2)y = (1,2)
# x和y是具备不同id的对象
x is y #> False
z = {x:"orca"}
# 只要哈希值相同,便可互换使用
z[y] #> 'orca'

相等(==)的数值拥有相同的哈希值,即使两个相等的数值属于不同的类型,它们的哈希值也相同,例如 1 和 1.0:

1 == 1.0 #> True
hash(1),hash(1.0) #> (1, 1)

tips: 两个相等(==)的对象必定拥有相同的哈希值,但返回过并不一定成立。

注意:

对于拥有自定义 __hash__() 方法的对象,hash() 函数会根据主机(host machine)的位宽来截断 __hash__() 的返回值。

以上就是hash()是python内置的吗的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码
  • 相关标签:python hash 内置
  • 本文原创发布php中文网,转载请注明出处,感谢您的尊重!
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    作者信息
    推荐视频教程
  • 小甲鱼零基础入门学习Python视频教程小甲鱼零基础入门学习Python视频教程
  • 黑马云课堂8天深入理解Python视频教程黑马云课堂8天深入理解Python视频教程
  • python编程入门系列图文教程python编程入门系列图文教程
  • 零基础入门Python项目实战零基础入门Python项目实战
  • 视频教程分类
    第八期线上培训班