1、什麼是 dict(字典)
Python 內置了 字典(dict),dict 全稱 dictionary,如果學過 Java ,字典就相當於 JAVA 中的 map,使用鍵-值(key-value)存儲,具有極快的查找速度。
name = {'一點水': '131456780001', '兩點水': '131456780002', '三點水': '131456780003', '四點水': '131456780004', '五點水': '131456780005'}
2、dict (字典)的創建
字典是另一種可變容器模型,且可存儲任意類型對象。
字典的每個鍵值(key=>value)對用冒號(:)分割,每個對之間用逗號(,)分割,整個字典包括在花括號({})中 ,格式如下所示:
dict = {key1 : value1, key2 : value2 }
注意:鍵必須是唯一的,但值則不必。值可以取任何數據類型,但鍵必須是不可變的。
3、訪問 dict (字典)
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
' dict '
__author__ = 'Kevin Gong'
name = {'一點水': '131456780001', '兩點水': '131456780002', '三點水': '131456780003', '四點水': '131456780004', '五點水': '131456780005'}
print(name['兩點水'])
結果:
131456780002
4、修改 dict (字典)
向字典添加新內容的方法是增加新的鍵/值對,修改或刪除已有鍵/值對
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
' dict '
__author__ = 'Kevin Gong'
dict1={'liangdianshui':'111111' ,'twowater':'222222' ,'兩點水':'333333'}
print(dict1)
# 新增一個鍵值對
dict1['jack']='444444'
print(dict1)
# 修改鍵值對
dict1['liangdianshui']='555555'
print(dict1)
結果:
{'liangdianshui': '111111', 'twowater': '222222', '兩點水': '333333'}
{'liangdianshui': '111111', 'twowater': '222222', '兩點水': '333333', 'jack': '444444'}
{'liangdianshui': '555555', 'twowater': '222222', '兩點水': '333333', 'jack': '444444'}
5、刪除 dict (字典)
通過 del 可以刪除 dict (字典)中的某個元素,也能刪除 dict (字典)
通過調用 clear() 方法可以清除字典中的所有元素
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
' dict '
__author__ = 'Kevin Gong'
dict1={'liangdianshui':'111111' ,'twowater':'222222' ,'兩點水':'333333'}
print(dict1)
# 通過 key 值,刪除對應的元素
del dict1['twowater']
print(dict1)
# 刪除字典中的所有元素
dict1.clear()
print(dict1)
# 刪除字典
del dict1
結果:
{'liangdianshui': '111111', 'twowater': '222222', '兩點水': '333333'}
{'liangdianshui': '111111', '兩點水': '333333'}
{}
6、 dict (字典)使用時注意的事項
- dict (字典)是不允許一個鍵創建兩次的,但是在創建 dict (字典)的時候如果出現了一個鍵值賦予了兩次,會以最後一次賦予的值爲準
- dict (字典)鍵必須不可變,可是鍵可以用數字,字符串或元組充當,但是就是不能使用列表
- dict 內部存放的順序和 key 放入的順序是沒有任何關係
和 list 比較,dict 有以下幾個特點:
- 查找和插入的速度極快,不會隨着key的增加而變慢
- 需要佔用大量的內存,內存浪費多
而list相反:
- 查找和插入的時間隨着元素的增加而增加
- 佔用空間小,浪費內存很少
7、dict (字典) 的函數和方法
8. 實例
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
' dict '
__author__ = 'Kevin Gong'
d = {
'Michael': 95,
'Bob': 75,
'Tracy': 85
}
print('d[\'Michael\'] =', d['Michael'])
print('d[\'Bob\'] =', d['Bob'])
print('d[\'Tracy\'] =', d['Tracy'])
print('d.get(\'Thomas\', -1) =', d.get('Thomas', -1))
結果:
d['Michael'] = 95
d['Bob'] = 75
d['Tracy'] = 85
d.get('Thomas', -1) = -1