# 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面