Python 中的 Tuple[Hashable] 是什么意思?

What does Tuple[Hashable] mean in Python?

我遇到了以下代码:

def func(self, v: Tuple[Hashable]):
...

我知道 v: Tuple 意味着变量 v 必须是元组类型,但是 Tuple[Hashable] 是什么意思? Python 中的元组不是总是可哈希的吗?

仅当元组中的值本身可哈希时,元组才可哈希。

>>> hash((1,2))
-3550055125485641917
>>> hash(([1],2))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unhashable type: 'list'