当前位置 : 主页 > 编程语言 > python >

Python小记——可散列的数据类型

来源:互联网 收集:自由互联 发布时间:2022-06-24
如果一个对象是可散列的,那么在这个对象的生命周期中,它的散列值是不变的。 Python里所有的不可变类型都是可散列的(x)。虽然元组本身是不可变序列,它里面的元素可能是其他
  • 如果一个对象是可散列的,那么在这个对象的生命周期中,它的散列值是不变的。
  • Python里所有的不可变类型都是可散列的(x)。虽然元组本身是不可变序列,它里面的元素可能是其他可变类型的引用。
In [1]: hash([1,2,3])
------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-1-35e31e935e9e> in <module>
----> 1 hash([1,2,3])

TypeError: unhashable type: 'list'

In [2]: hash((1,2,3))
Out[2]: 2528502973977326415

In [3]: hash((1,2,[1,2,3]))
------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-3-3dc2017fd13d> in <module>
----> 1 hash((1,2,[1,2,3]))

TypeError: unhashable type: 'list'

In [4]: hash((1,2,(1,2,3)))
Out[4]: -3548400018562967053


上一篇:Python小记——sorted
下一篇:没有了
网友评论