【字典---dict】python
相比較鏈表來講 ,字典是比較快的,舉例來講下。ide
好比考試須要查成績。函數
list語句以下:
ip
names = ['a', 'b', 'c'] scores = [95, 75, 85]
若是要根據名字來查成績,須要如今naemes中查找,而後會在scores找成績,也就是是說list越長,耗時間也就最大了。內存
dict語句以下:ci
dict = {'a':95,'b':75,'c':85} dict['a']
在字典中能夠比較快的找到是由於 它能夠直接根據key的hash,來直接找到哦對應value的值。get
因此字典是一個 key _ value 鍵值對的數據的集合,input
並且是一個 可變的, 無序的, key不重複的特殊集合。hash
注意事項:
it
在訪問字典是若是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. 佔用內存少,節省空間。
也就是說字典的時間是用內存換取的。