1、dict
(1)python內建了字典:dict的支援,dict全稱dictionary,在其他語言中也稱為map,使用鍵-值(key-value)儲存,具有極快的查詢速度。
(2)由於乙個key只能對應乙個value,所以,多次對乙個key放入value,後面的值會把前面的值沖掉
(3)如果key不存在,dict就會報錯。要避免key不存在的錯誤,有兩種辦法,
一是通過in判斷key是否存在: 『thomas』 in d 》false
二是通過dict提供的get()方法,如果key不存在,可以返回none,或者自己指定的value:d.get(『thomas』, -1) 》-1如果沒有』thomas』,返回-1
(4)要刪除乙個key,用pop(key)方法,對應的value也會從dict中刪除
(5)和list比較,dict有以下幾個特點:
查詢和插入的速度極快,不會隨著key的增加而變慢;需要占用大量的記憶體,記憶體浪費多。而list相反:查詢和插入的時 間隨著元素的增加而增加;占用空間小,浪費記憶體很少。所以,dict是用空間來換取時間的一種方法。
(6)dict可以用在需要高速查詢的很多地方,在python**中幾乎無處不在,正確使用dict非常重要,需要牢記的一條就是dict的key必須是不可變物件,在python中,字串、整數等都是不可變的,因此,可以放心地作為key。而list是可變的,就不能作為key。
2、set
(1)set和dict類似,也是一組key的集合,但不儲存value。由於key不能重複,所以,在set中,沒有重複的key。重複元素在set中自動被過濾。
(2)通過add(key)方法可以新增元素到set中,可以重複新增,但不會有效果。
(3)通過remove(key)方法可以刪除元素。
(4)set可以看成數學意義上的無序和無重複元素的集合,因此,兩個set可以做數學意義上的交集、並集等操作。
(5)set和dict的唯一區別僅在於沒有儲存對應的value,但是,set的原理和dict一樣,所以,同樣不可以放入可變物件,因為無法判斷兩個可變物件是否相等,也就無法保證set內部「不會有重複元素」。
python學習筆記 使用dict和set
python內建了字典 dict的支援,dict全稱dictionary,在其他語言中也稱為map,使用鍵 值 key value 儲存,具有極快的查詢速度。1.定義字典 字典由多個鍵及與其對應值構成的鍵 值對組成,鍵與值之間用 隔開。dict1 建立乙個空字典 dict2 建立字典注意,字典的鍵是...
python學習筆記 dict
1.往dict中動態加入元素 dict dict item i 2.dict內建函式與方法 序號函式及描述 1cmp dict1,dict2 比較兩個字典元素。2len dict 計算字典元素個數,即鍵的總數。3str dict 輸出字典可列印的字串表示。4type variable 返回輸入的變數...
python學習之路 dict
1 dict簡單來說是key value對。如 dict 2 由於dict也是集合,len 函式可以計算任意集合的大小 3 可以簡單地使用 d key 的形式來查詢對應的 value,這和 list 很像,不同之處是,list 必須使用索引返回對應的元素,而dict使用key 4 注意 通過 key...