因為字典中是鍵-值對(key-value),且字典無順序、自動去重、占用內存多,用內存換取速度。最重要的是因為字典是hash類型的。
2、那什麽是hash呢?
哈希算法將任意長度的二進制值映射為較短的固定長度的二進制值,這個小的二進制值稱為哈希值。哈希值是壹段數據唯壹且極其緊湊的數值表示形式。
如果散列壹段明文而且哪怕只更改該段落的壹個字母,隨後的哈希都將產生不同的值。要找到散列為同壹個值的兩個不同的輸入,在計算上是不可能的,所以數據的哈希值可以檢驗數據的完整性。壹般用於快速查找和加密算法。
3、dict會把所有的key變成hash 表,然後將這個表進行排序。
妳通過data[key]去查data字典中壹個key的時候,python會先把這個key hash成壹個數字,然後拿這個數字到hash表中看沒有這個數字, 如果有,拿到這個key在hash表中的索引,拿到這個索引去與此key對應的value的內存地址那取值就可以了。