# wk09_1102_字典_期末筆記hackMd 6.1 字典基本操作 1. 建立字典 2. 字典取值 3. 字典維護 6.2 字典進階操作 1. 字典進階功能整理 2. in 功能 3. keys 及 values方法 4. items 方法 5. setdefault 方法 ## [Inclass Practice] ### {範例} 1. 血型個性查詢 \<dictget> 2. 輸入及查詢學生成績 \<in> 3. keys 及 values 顯示世大運獎牌數 \<keyvalue> 4. intems 顯示世大運獎牌數 \<item> 1. 鍵為血型,值為個性,輸入血型時,若血型存在,就顯示該血型的個性,錯血型不存在則顯示沒有該血型訊息 ```python dict1={"A":"內向穩重","B":"外向樂觀","O":"堅強自信","AB":"聰明自然"} bloodtp=input("請輸入血型:") blood=dict1.get(bloodtp) if blood == None: print("沒有%s血型"%bloodtp) else: print("%s的血型個性為%s"%(bloodtp,dict1[bloodtp])) ``` 請輸入血型:AB AB的血型個性為聰明自然 2. 輸入學生姓名後顯示該學生成績,否則輸入成績,並加入字典 ```python dict1={"Alice":100,"Bob":50,"Cindy":85,"David":99} name= input("輸入學生姓名") score= dict1.get(name) if name in dict1: print("%s的成績為%s"%(name,dict1[name])) else: score=input("輸入該學生成績:") dict1[name]=score print("學生成績:"+str(dict1)) ``` 輸入學生姓名Harry 輸入該學生成績:72 學生成績:{'Alice': 100, 'Bob': 50, 'Cindy': 85, 'David': 99, 'Harry': '72'} 3. 有三筆資料,獎牌為鍵,獎牌數為值,使用keys和values方法顯示各種獎牌數 ```python dict1={"金牌":26,"銀牌":34,"銅牌":30} listkey=list(dict1.keys()) listvalue=list(dict1.values()) for i in range(len(listkey)): print("得到的%s數為%s面"%(listkey[i],listvalue[i])) ``` 得到的金牌數為26面 得到的銀牌數為34面 得到的銅牌數為30面 4. 利用items來重新顯示2017世大運.台灣代表隊的各種獎牌數 ```python dict1={"金牌":26,"銀牌":34,"銅牌":30} item1=dict1.items() for name,num in item1: print("得到的%s數目為%s面"%(name,num)) ``` 得到的金牌數目為26面 得到的銀牌數目為34面 得到的銅牌數目為30面