【问题标题】:Underlying datastructure of list, tuple, dict [closed]列表,元组,字典的基础数据结构[关闭]
【发布时间】:2014-02-19 07:26:17
【问题描述】:

我想了解一下python中的数据类型——list、tuple、dict和set——是如何实现的

它们是如何实现的,重要的是使用的数据结构。 精确有什么地方/网址可以理解吗?

【问题讨论】:

  • Source code 将是我的首选。
  • 在 Python、Jython、PyPy、...中实现?
  • 底层实现是实现细节,你不能假设它们在所有 Python 实现中都是相同的。
  • 对于我有兴趣了解参考实现 CPython 的歧义,我深表歉意。但是它与其他实现有什么不同吗?我有兴趣了解数据结构而不是实现中使用的本机数据类型。例如: 'dict' 是使用哈希映射实现的。为什么。这种信息。谢谢
  • 对此投反对票似乎很苛刻。

标签: python data-structures dictionary set tuples


【解决方案1】:

最好看的地方是CPython implementation source code

  • dict - 哈希映射以快速解析键为目标
  • list - 看起来像 PyObjects 的数组
  • tuple - 与列表相同,但具有元组可以允许的优化(固定大小、对象)
  • set - 具有缓存局部性优化的哈希映射

源代码被大量注释并且写得很好C。这将是了解详细使用的数据结构的最佳场所。

【讨论】:

  • 谢谢!我尝试搜索类似的东西并没有得到好的结果。谢谢。
猜你喜欢
  • 2018-02-25
  • 2021-11-12
  • 1970-01-01
  • 2016-04-05
  • 2018-08-10
  • 2012-01-08
  • 2017-10-11
  • 1970-01-01
  • 2010-09-10
相关资源
最近更新 更多