7-Python3從入門到實戰—基礎之數據類型(字典-Dictionary)
阿新 • • 發佈:2018-03-06
from ref 不存在 gpo http 必須 ems href int
Python從入門到實戰系列——目錄
字典的定義
字典是另一種可變容器模型,且可存儲任意類型對象;使用鍵-值(key-value)存儲,具有極快的查找速度;
字典的每個鍵值(key=>value)對用冒號(:)分割,每個對之間用逗號(,)分割,整個字典包括在花括號({})中語法格式:{ key1 : value1, key2 : value2, key3 : value3 ...} users={‘ 張三 ‘ : 18 , ‘ 李四 ‘ : 19 , ‘ 王五 ‘ : 20 , ‘ 趙六 ‘ : 19}
字典的鍵必須是唯一的,並且值的數據類型是不可變的,但值可以使任意的或者重復的;
# 編號作為鍵,鍵唯一,值可變 users={ 1 :‘ 張三 ‘ , 2 :‘ 李四 ‘ , 3 :‘ 王五 ‘ , 4 :‘ 張三 ‘ }
訪問字典裏的值
訪問字典中的值使用 dict[鍵]
dict = {‘name‘ : ‘ SiberiaDante ‘ , ‘ age ‘ : 18 , ‘ address‘ : ‘ China ‘} print(dict[‘name‘] # 結果 :SiberiaDante
修改字典
根據字典中的鍵修改字典中的值
dict = {‘name‘ : ‘ SiberiaDante ‘ , ‘ age ‘ : 18 , ‘ address‘ : ‘ China ‘} print(dict[‘age‘]) # 輸出:18 dict [ ‘ age ‘ ] = 20 print(dict[‘age‘]) # 輸出: 20
向已有的字典中增加鍵值對
dict = {‘name‘ : ‘SiberiaDante‘ , ‘age‘ : 18 , ‘address‘ : ‘China‘} print(dict) # 結果 :{‘name‘: ‘SiberiaDante‘, ‘age‘: 18, ‘address‘: ‘China‘} dict[‘language‘]=‘Python‘ print(dict) # 結果 : {‘name‘: ‘SiberiaDante‘, ‘age‘: 18, ‘address‘: ‘China‘,‘language‘:‘Python‘}
刪除字典
刪除字典中的單個元素:dict[key]
dict = {‘name‘ : ‘SiberiaDante‘ , ‘age‘ : 18 , ‘address‘ : ‘China‘} print(dict) # 結果 : {‘name‘: ‘SiberiaDante‘, ‘age‘: 18, ‘address‘: ‘China‘} del dict[‘name‘] print(dict) # 結果 : { ‘age‘: 18, ‘address‘: ‘China‘}
刪除一個字典: del dict
dict = {‘name‘ : ‘SiberiaDante‘ , ‘age‘ : 18 , ‘address‘ : ‘China‘} del dict
清空字典:dict.clear()
dict = {‘name‘ : ‘SiberiaDante‘ , ‘age‘ : 18 , ‘address‘ : ‘China‘} print(dict) # 結果 : {‘name‘: ‘SiberiaDante‘, ‘age‘: 18, ‘address‘: ‘China‘} dict.clear() print(dict) # 結果:{}
字典內置函數&方法
函數
len(dict) 計算字典元素個數,即鍵的總數。 str(dict) 輸出字典,以可打印的字符串表示。 type(variable) 返回輸入的變量類型,如果變量是字典就返回字典類型。
方法
dict.clear() 刪除字典內所有元素 dict.copy() 返回一個字典的淺復制 dict.fromkeys() 創建一個新字典,以序列seq中元素做字典的鍵,val為字典所有鍵對應的初始值 dict.get(key, default=None) 返回指定鍵的值,如果值不在字典中返回default值 key in dict 如果鍵在字典dict裏返回true,否則返回false dict.items() 以列表返回可遍歷的(鍵, 值) 元組數組 dict.keys() 以列表返回一個字典所有的鍵 dict.setdefault(key, default=None) 和get()類似, 但如果鍵不存在於字典中,將會添加鍵並將值設為default dict.update(dict2) 把字典dict2的鍵/值對更新到dict裏 dict.values() 以列表返回字典中的所有值 pop(key[,default]) 刪除字典給定鍵 key 所對應的值,返回值為被刪除的值。key值必須給出。 否則,返回default值。 popitem() 隨機返回並刪除字典中的一對鍵和值(一般刪除末尾對)。
字典和列表對比
- 和list比較,dict有以下幾個特點:
- 查找和插入的速度極快,不會隨著key的增加而變慢;
*需要占用大量的內存,內存浪費多;
- 查找和插入的速度極快,不會隨著key的增加而變慢;
- 和dictionary相比,list的特性:
- 查找和插入的時間隨著元素的增加而增加;
- 占用空間小,浪費內存很少;
7-Python3從入門到實戰—基礎之數據類型(字典-Dictionary)