Python中字典为什么比列表快?
发布时间:2026-03-24 19:51:30

1、为什么Python中的字典比列表快?
因为字典中有键-值对(key-value),而且字典无序,自动去重,占用内存多,用内存换取速度。最重要的是字典是hash类型。
2、什么是hash?
哈希算法将任何长度的二进制值映射到固定长度较短的二进制值,称为哈希值。哈希值是数据中唯一而极其紧凑的值表示形式。
如果一段明确,即使只更改一个字母,哈希也会产生不同的值。在计算中不可能找到两个不同的输入,即散列为相同的值,因此数据的哈希值可以检验数据的完整性。它通常用于快速搜索和加密算法。
3、dict将把所有的key变成hash 表格,然后对表格进行排序。
你通过data[key]在查看data字典中的一个key时,python会先把这个key放在第一位。 hash成一个数字,然后把这个数字拿到hash表中,看看没有这个数字, 如果是这样的话,在hash表中获得这个key的索引,并获得与这个key对应的value的内存地址,那么值就可以了。
下一篇 返回列表
