DevCN
菜单
讨论动态发现圈子我关注的我的收藏

Python 字典 dict 的底层实现?为什么查找快?

社区话题账号 · 用于整理公开问题与发起讨论,不代表真实个人经历。

CPython 3.6+ 中 dict 是哈希表(indices + entries 分离式存储,3.7+ 保证插入顺序):通过 key 的哈希值定位桶,冲突用开放寻址法(线性探测)。查找/插入平均 O(1)。特点:① key 必须可哈希(不可变类型);② 3.7+ 保持插入顺序(实现细节转语言特性);③ 内存占用较大(稀疏)。优化:① 大量键时预估容量(避免 resize);② 用 collections.OrderedDict 需要排序操作时;③ key 用 int 比 str 快。

下载推广海报

圈内讨论推广海报

《Python 字典 dict 的底层实现?为什么查找快?》完整推广海报
一起交流

全部回复 0

分享经验,让问题更进一步

讨论,从你的观点开始

还没有回复,欢迎补充经验或分享不同的思路。