首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python字典是哈希表的一个例子吗?

Python字典是哈希表的一个例子吗?
EN

Stack Overflow用户
提问于 2008-09-22 21:22:29
回答 3查看 210.4K关注 0票数 228

Python中的一个基本数据结构是字典,它允许用户记录“键”以查找任何类型的“值”。这在内部实现为哈希表吗?如果不是,那是什么?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2008-09-22 13:23:00

是的,它是一个哈希映射或哈希表。您可以阅读由here Tim Peters编写的对python的dict实现的描述。

这就是为什么你不能使用一些‘不可哈希’的东西作为字典键,比如列表:

代码语言:javascript
复制
>>> 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 tablescheck how it has been implemented in pythonwhy it is implemented that way

票数 293
EN

Stack Overflow用户

发布于 2008-09-22 13:25:28

是。在内部,它被实现为基于Z/2上的本原多项式的开放散列(source)。

票数 22
EN

Stack Overflow用户

发布于 2008-09-22 15:09:44

为了扩展nosklo的解释:

代码语言:javascript
复制
a = {}
b = ['some', 'list']
a[b] = 'some' # this won't work
a[tuple(b)] = 'some' # this will, same as a['some', 'list']
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/114830

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档