標籤:下標 toolbar tde dict 輸出 python 擷取 修改 default
#字典是key-value的資料類型,字典是無序的,沒有下標(列表有下標),key必須是唯一的
info = { "stu001":"fengxiaoli", "stu002":"cx", "stu003":"wyc", "stu004":"ljh",}###-----------------迴圈字典for i in info: #推薦使用 print(i,info[i])for k,v in info.items(): #不推薦,因為它是先轉化為列表在列印,資料量的時候資料會很慢 print(k,v) ###-----------------查詢print("stu001" in info) #判斷key是否在字典中,同py2中 info.has_key("stu001")print(info.get("stu002")) #通過key擷取value,推薦使用print(info["stu001"])print(info) ###-----------------修改info["stu003"] = "fzl" #有那個key就修改,沒有新增info["stu005"] = "fzl"print(info)###-----------------刪除del info #刪除整個字典del info["stu005"]info.pop("stu004")info.popitem() #隨機刪除一組###-----------------合并兩個字典b = { "stu001":"fxl", 3:5, 4:8,}info.update(b) #合并字典info和字典b,有重複的就更新,不重複的就合并print(info)###-----------------把字典轉成列表print(info.items())###-----------------初始化一個字典c = dict.fromkeys([7,8,9],"test")print(c)#輸出{8: 'test', 9: 'test', 7: 'test'}c1 = dict.fromkeys([7,8,9],{1:"feng",2:"cx",3:"fxl"})print(c1)#輸出{8: {1: 'feng', 2: 'cx', 3: 'fxl'}, 9: {1: 'feng', 2: 'cx', 3: 'fxl'}, 7: {1: 'feng', 2: 'cx', 3: 'fxl'}}c1[8][2]="xia" #類似淺copy,二級字典中資料指向同一記憶體位址,修改一個所有都改變print(c1)#輸出{8: {1: 'feng', 2: 'xia', 3: 'fxl'}, 9: {1: 'feng', 2: 'xia', 3: 'fxl'}, 7: {1: 'feng', 2: 'xia', 3: 'fxl'}} ###-----------------多級字典info2 = { "stu001":{"fxl":["性別:男","年齡:21"]}, "stu002":{"cx":["性別:女","年齡:25"]}, "stu003":{"fzl":["性別:男","年齡:35"]},}info2["stu001"]["fxl"][1] = "年齡:23" #修改info2.setdefault("stu004",{"ljh":["性別:女","年齡:40"]}) #增加,如果字典中有這個key就不改變原值,沒有就建立print(info2)
python---字典