作家
登录

深入Python字典的内部实现

作者: 来源: 2017-05-23 09:25:06 阅读 我要评论

新表的长度应大年夜于 24,计算长度值时会赓续对当前长度值进行升位运算,直到大年夜于 24,最终获得的长度是 32,例如当前长度为 8 ,则计算过程如8 -> 16 -> 32。

这就是长度调剂的过程:分派一个长度为 32 的新表,然后用新的掩码,也就是 31 ,将旧表中的条目插入到新表。最终获得的结不雅如下:

删除项

在以下的篇幅中,我们仅推敲用字符串作为键的情况。在Python中,用于处理字符串的哈希函数是如许定义的:

删除条目时将调用PyDict_DelItem()函数。删除时,起首计算键的哈希值,然后调用搜询函数返回到该条目,最后该槽被标记为哑槽。

假设我们想要大年夜字典中删除键'c',我们最终将获得如下结不雅:

留意,删除项目后,即使最终晃荡槽的数量远小于总的数量也不会触发调剂数组长度的动作。然则,若删减后又增长键/值对时,因为调剂长度的前提断定基于的是晃荡槽与哑槽的总数量,因而可能会缩减数组长度。

【编辑推荐】

  1. 用Python多线程实现临盆者花费者模式
  2. Python收集爬虫实现道理与实现技巧
  3. 用Python写一个NoSQL数据库
  4. Python集合set和frozenset的内建办法详解
  5. 若何让Python像Julia一样快地运行
【义务编辑:枯木 TEL:(010)68476606】

  推荐阅读

  如何算出精确的PUE?连续监测才是王道

PUE申报精度电力应用效力(PUE)是一个评价数据中间能源效力的通用指标,是数据中间消费的所有能源竽暌闺IT负载应用的能源之比。PUE能赞助数据中间经理有效地治理能耗设备。计算某数据中间举措措施的PUE值有很多原因,>>>详细阅读


本文标题:深入Python字典的内部实现

地址:http://www.17bianji.com/lsqh/35357.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)