一:字典的知識:python
字典:python中很是重要的數據類型,在python中惟一一個映射的數據類型 數據類型分類
按照數據可變與不可變: # 不可變數據類型: int str bool tuple 可哈西 # 可變數據類型: list,dict,set 不可哈西 1 鍵值對 #字典的 key:value# key 是惟一的 且是不可變數據類型 int,str bool tuple #value:任意數據類型
二:字典增app
1 按照key值增長 有就覆蓋,沒有就增長spa
字典增長 dic={'name':'jin','age':16,'sex':'male'} dic['name']='sese' print(dic) # 有就覆蓋 dic['hobby']='kaiche' print(dic) # 沒有就添加
打印結果:get
2 setdefault (添加沒有key值,不設置value顯示none,設置了正常顯示。 添加有的key值,會被覆蓋(至關於沒有改變以前的顯示))it
1 按照key和value增長,添加沒有key值,valu沒有設置,顯示nonedate
dic={'name':'jin','age':16,'sex':'male'} dic.setdefault('lang') print(dic)
打印結果循環
2 設置沒有key值,並設置value,所有顯示數據類型
dic={'name':'jin','age':16,'sex':'male'} dic.setdefault('hobbie','kaichuan') print(dic)
顯示結果im
3 設置key和value,有key,value被覆蓋數據
dic={'name':'jin','age':16,'sex':'male'} dic.setdefault('name','zhu') print(dic)
打印結果
三:字典刪除
1 pop 按照key值刪除,有返回值,若是沒有key,能夠設置返回值。
有key值例子,打印返回值。
dic={'name':'jin','age':16,'sex':'male'} ret=dic.pop('name') print(dic) print(ret)
顯示結果:
沒有key值 設置返回值
dic={'name':'jin','age':16,'sex':'male'} ret=dic.pop('name1','沒有此鍵') print(ret)
打印結果
2 隨機刪除 popitem (3.5版本之前能夠(字典是無序的),3.6版本後字典是有序的,默認刪除最後一個。
dic={'name':'jin','age':16,'sex':'male'} dic.popitem() print(dic)
打印結果
3 clear(li.clear()) 清空字典
dic={'name':'jin','age':16,'sex':'male'} dic.clear() print(dic)
打印結果
空字典
4 del 刪除字典(雖然顯示錯誤,可是就這麼用)
打印結果:
四:字典修改
1 直接修改
dic={'name':'jin','age':16,'sex':'male'} dic['name']='zhu' print(dic)
打印結果
2 update
將dic1的鍵和值覆蓋添加到dic2中,dic1不變
dic1={'name':'jin','age':16,'sex':'male'} dic2={'name':'zhujun','weight':60} dic2.update(dic1) print(dic1) print(dic2)
打印結果
五:字典的查
第一種:直接查(按照key)
第二種:get,當沒有key時候,若是沒有設置返回值,顯示none.
設置返回值顯示返回值內容
dic={'name':'jin','age':16,'sex':'male'} print(dic['name']) print(dic.get('name')) print(dic.get('haha')) print(dic.get('haha','孩子長點心,找不到'))
打印結果:
a,b直接賦值,只要後面有兩個元素, int list dict tuple等類型都行
a,b能同時賦值,只要後面有兩個元素, int list dict tuple等類型都行 a = 1 #一行代碼實現a,b值互換 b = 3 a,b = b,a print(a,b) a,b = ['alex','wusir'] print(a,b) a,b = ('alex','wusir') print(a,b)
打印結果:
六:取出字典鍵和值,
1:取key
第一種循環整個字典
dic1={'name':'jin','age':16,'sex':'male'} for k in dic1: print(k)
打印結果
第二種:
dic1={'name':'jin','age':16,'sex':'male'} for k in dic1.keys(): print(k)
打印結果
2:取value
dic1={'name':'jin','age':16,'sex':'male'} for v in dic1.values(): print(v)
打印結果:
3:取key和value
dic1={'name':'jin','age':16,'sex':'male'} for k,v in dic1.items(): print(k,v)
打印結果:
七:字典的嵌套 聯繫題
dic = { 'name':'金鑫', 'name_list':[1,2,3,'李傑'], 1:{ 'python10':['小黑','萌哥'], '老男孩':{'name':'oldboy','age':56} }
問題:
1,[1,2,3,'李傑']追加'wusir' dic['name_list']=[1,2,3,'李傑','wusir'] print(dic) dic['name_list'].append('wusir') print(dic) 2, ['小黑','萌哥'] 小黑 萌哥中間 插入一個花哥 dic[1]['python10'].insert(1,'花哥') print(dic) 3, {'name':'oldboy','age':56} 添加一個鍵值對,hobby:男人 dic[1]['老男孩']['hobbie']='sese' print(dic)
打印結果: