第9天:字典(Dictionary)
課程簡介
字典是 Python 中的一種鍵值對 (key-value pair) 的資料結構。不同於列表,字典的元素是無序的,並且每個鍵都唯一對應一個值。今天我們將學習如何建立字典、操作字典,並了解常見的字典方法。
學習內容
1. 建立字典
字典是使用大括號 {}
定義的,鍵和值之間用冒號 :
分隔,鍵值對之間用逗號分隔。
範例:
1
2
3
4
5
# 建立一個包含名稱和年齡的字典
person = {
"name": "Alice",
"age": 25
}
2. 訪問字典的值
可以使用鍵來訪問字典中的值,方法是 dictionary[key]
。
範例:
1
2
3
4
5
6
7
8
person = {
"name": "Alice",
"age": 25
}
# 訪問字典中的值
print(person["name"]) # 輸出: Alice
print(person["age"]) # 輸出: 25
3. 新增或修改字典元素
可以通過指定鍵來新增或修改字典中的元素。如果鍵已存在,則修改對應的值;如果鍵不存在,則新增一個鍵值對。
範例:
1
2
3
4
5
6
7
8
9
10
11
12
person = {
"name": "Alice",
"age": 25
}
# 新增一個鍵值對
person["city"] = "New York"
print(person) # 輸出: {'name': 'Alice', 'age': 25, 'city': 'New York'}
# 修改現有的值
person["age"] = 26
print(person) # 輸出: {'name': 'Alice', 'age': 26, 'city': 'New York'}
4. 刪除字典元素
可以使用 del
關鍵字或 pop()
方法來刪除字典中的某個鍵值對。
範例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
person = {
"name": "Alice",
"age": 25,
"city": "New York"
}
# 使用 del 刪除
del person["city"]
print(person) # 輸出: {'name': 'Alice', 'age': 25}
# 使用 pop() 方法刪除
age = person.pop("age")
print(person) # 輸出: {'name': 'Alice'}
print(age) # 輸出: 25
5. 檢查鍵是否存在
可以使用 in
關鍵字來檢查某個鍵是否存在於字典中。
範例:
1
2
3
4
5
6
7
8
person = {
"name": "Alice",
"age": 25
}
# 檢查鍵是否存在
if "name" in person:
print("Name exists in the dictionary") # 輸出: Name exists in the dictionary
6. 字典的常見方法
keys()
:返回所有鍵的列表。values()
:返回所有值的列表。items()
:返回所有鍵值對的列表(每個鍵值對作為一個 tuple)。get()
:根據鍵返回對應的值,如果鍵不存在則返回預設值。
範例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
person = {
"name": "Alice",
"age": 25
}
# 獲取所有鍵
print(person.keys()) # 輸出: dict_keys(['name', 'age'])
# 獲取所有值
print(person.values()) # 輸出: dict_values(['Alice', 25])
# 獲取所有鍵值對
print(person.items()) # 輸出: dict_items([('name', 'Alice'), ('age', 25)])
# 使用 get() 方法
print(person.get("name")) # 輸出: Alice
print(person.get("city", "Not Found")) # 輸出: Not Found
教學重點
- 字典的定義:學會如何建立字典並理解鍵值對的結構。
- 訪問字典元素:使用鍵來訪問字典中的值。
- 新增或修改元素:通過指定鍵來新增或修改字典中的元素。
- 刪除字典元素:使用
del
或pop()
來刪除字典中的鍵值對。 - 檢查鍵的存在:使用
in
關鍵字來判斷某個鍵是否存在於字典中。 - 字典的常見方法:如
keys()
、values()
、items()
和get()
的使用方法。
任務
- 建立一個描述一位學生的字典,包含姓名、年齡和學號,並列印出這些資料。
- 使用字典方法來新增一個鍵值對,代表學生的學校名稱,並修改年齡值。
- 刪除學號的鍵值對,並確認其已被刪除。
- 使用
get()
方法來嘗試獲取一個不存在的鍵,並設置一個預設值。
本文章以 CC BY 4.0 授權