字典元素由鍵(Key)和對應的值(Value)兩部分組成。
在 Python 中,字典(Dictionary)是壹種無序的數據結構,用於存儲鍵-值對(Key-Value Pairs)。字典元素由鍵(Key)和對應的值(Value)兩部分組成。具體來說,字典的鍵通常是字符串(String)或數字(Number),而值可以是任何類型的 Python 對象,包括字符串、數字、列表(List)、元組(Tuple)、集合(Set)和甚至是其他字典。
字典的學習
1、字典類型簡介
字典(dict)是存儲key/value數據的容器,也就是所謂的map、hash、關聯數組。無論是什麽稱呼,都是鍵值對存儲的方式。
2、字典元素的順序改變
因為元素存儲到dict的時候,都經過hash()計算,且存儲的實際上是key對應的hash值,所以dict中各個元素是無序的,或者說無法保證順序。所以,遍歷dict得到的元素結果也是無序的。無序是理論上的。但是在python 3.7中,已經保證了python dict中元素的順序和插入順序是壹致的。
3、字典和列表的比較
python中list是元素有序存儲的序列代表,dict是元素無序存儲的代表。它們都可變,是python中最靈活的兩種數據類型。
但是:dict的元素檢索、增刪改速度快,不會隨著元素增多、減少而改變。但缺點是內存占用大list的元素檢索、增刪改速度隨著元素增多會越來越慢(當然實際影響並沒有多大),但是內存占用小,換句話說,dict是空間換時間,list是時間換空間。
其實從dict和list的數據結構上很容易可以看出dict要比list占用的內存大。不考慮存儲元素的實際數據空間,list存儲每個元素只需壹個指針***8字節(64位機器)即可保存,而dict至少需要24字節(64位機器),不僅如此,hash表結構中每個hash桶基本上會空余1/3以上的空間。