Python 中的基本数据结构之一是字典,它允许记录“键”以查找任何类型的“值”。这是在内部作为哈希表实现的吗?如果不是,那是什么?
最佳答案
是的,它是一个 HashMap 或哈希表。您可以阅读 Tim Peters 所写的 python dict 实现的描述,here .
这就是为什么你不能使用“不可散列”的东西作为字典键的原因,比如列表:
>>> a = {}
>>> b = ['some', 'list']
>>> hash(b)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: list objects are unhashable
>>> a[b] = 'some'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: list objects are unhashable
您可以read more about hash tables或 check how it has been implemented in python和 why it is implemented that way .
关于python - Python 字典是哈希表的一个例子吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/114830/