【字典---dict】
相比較鏈表來說 ,字典是比較快的,舉例來說下。
比如考試需要查成績。
list語句如下:
names = ['a', 'b', 'c'] scores = [95, 75, 85]
如果要根據名字來查成績,需要現在naemes中查找,然後會在scores找成績,也就是是說list越長,耗時間也就最大了。
dict語句如下:
dict = {'a':95,'b':75,'c':85} dict['a']
在字典中可以比較快的找到是因爲 它可以直接根據key的hash,來直接找到哦對應value的值。
所以字典是一個 key _ value 鍵值對的數據的集合,
而且是一個 可變的, 無序的, key不重複的特殊集合。
注意事項:
在訪問字典是如果key不在字典中,會立即返回錯誤。
如下:
dict = {'a':95,'b':75,'c':85} dict['r']
會返回下列錯誤:
KeyError Traceback (most recent call last)<ipython-input-72-b849e302f44d> in <module>() 1 dict = {'a':95,'b':75,'c':85} ----> 2 dict['r'] KeyError: 'r'
爲了避免錯誤產生,可以使用in 來確認。
也可以通過get來返回。
在修改字典時
可以直接使用key來賦值,直接但是會把原來的的值頂掉。
要刪除一個key時要注意,可以使用pop(key),對應的value也會被刪除。
字典內置函數
字典內置方法;
字典dict和列表list比較有以下特點:
字典dict :
插入速度快,不會隨着key的增加而增加。
需要佔用大量內存,浪費內存。
列表 list:
1. 查找和插入隨着元素增加而增加。
2. 佔用內存少,節省空間。
也就是說字典的時間是用內存換取的。