owned this note
owned this note
Published
Linked with GitHub
---
tags : python
---
# DAY 08 字典應用
## 用迴圈遍訪字典
* 遍訪字典中所有的鍵-值對( items()方法 )
範例如下 :
```python=
car = {"color":"black","brand":"toyota"} # 建立一個car字典裡面包含兩個鍵值對
for key,value in car.items(): # items()方法會讓for迴圈將每個鍵-值對分別存到key和value的變數中
print("key : "+key) # 印出鍵
print("value : "+value) # 印出值
```
輸出結果 :
```python
key : color
value : black
key : brand
value : toyota
```
* 遍訪字典中所有的鍵( keys()方法 )
範例如下 :
```python=
car = {"color":"black","brand":"toyota"} # 建立一個car字典裡面包含兩個鍵值對
for key in car.keys(): # keys()方法會讓for迴圈將每個鍵存到key變數中
print("key : "+key) # 印出鍵
```
輸出結果 :
```python
key : color
key : brand
```
* 遍訪字典中所有的值( values()方法 )
範例如下 :
```python=
car = {"color":"black","brand":"toyota"} # 建立一個car字典裡面包含兩個鍵值對
for value in car.values(): # values()方法會讓for迴圈將每個值存到value變數中
print("value : "+value) # 印出值
```
輸出結果 :
```python
value : black
value : toyota
```
* 以特定順序遍訪字典的鍵( sorted()方法 )
範例如下 :
```python=
favorite_fruits={"bonny":"apple","jack":"banana","rose":"grape","steven":"apple"} # 建立一個favorite_fruits字典裡面包含四個鍵值對
for key in sorted(favorite_fruits.keys()): # sorted()方法包住keys()方法會讓for迴圈將每個鍵依照字母順序排好存到key變數中
print(key) # 印出鍵
```
輸出結果 :
```python
bonny
jack
rose
steven
```
* 刪除重複的值( set()方法 )
範例如下 :
```python=
favorite_fruits={"bonny":"apple","jack":"banana","rose":"grape","steven":"apple"} # 建立一個favorite_fruits字典裡面包含四個鍵值對
print("the following fruits have been mentioned :")
for value in set(favorite_fruits.values()) : # set()方法包住keys()方法會讓for迴圈將不重複的值存到value變數中
print(value) # 印出值
```
輸出結果 :
```python
the following fruits have been mentioned :
banana
apple
grape
```
---
## 字典中的串列
範例如下 :
```python=
colors={"orange":["red","yellow"],"green":["blue","yellow"]} # 建立一個colors字典裡面有兩個鍵值對
for keys,values in colors.items() : # items()方法會讓for迴圈將每個鍵-值對分別存到keys和values的變數中
print("If you want to get color "+keys)
print("you need to add :")
for value in values: # 告知python從values串列中取出值,並將取出的值存到value變數內
print(value)
```
輸出結果 :
```python
If you want to get color orange
you need to add :
red
yellow
If you want to get color green
you need to add :
blue
yellow
```
---
## 字典中的字典
範例如下 :
```python=
# 建立一個字典裡面包含兩個字典
pets={
"dog":{
"name":"Tony",
"age":4,
"gender":"male",
},
"cat":{
"name":"Kate",
"age":3,
"gender":"female",
},
}
for pet,pet_info in pets.items() : # items()方法會讓for迴圈將每個鍵-值對分別存到pet和pet_info的變數中
print("I have a "+pet+",its name is "+pet_info["name"]+","
+str(pet_info["age"])+" years old,and gender is "+pet_info["gender"] ) # 分別取得鍵(dog,cat)和從字典中的字典取得值
```
輸出結果 :
```python
I have a dog,its name is Tony,4 years old,and gender is male
I have a cat,its name is Kate,3 years old,and gender is female
```
#### 今天結束,各位明天見 :hand:
***
資料來源:<<python程式設計的樂趣>>-Eric Matthes著/H&C譯