修改字典

Python SELF TW
等級 11 , 課堂 5
開放

5.1 新增元素

我們已經學會了如何處理字典中的元素,現在讓我們來看看如何簡單快速地更改這個字典。我們像往常一樣,從添加元素開始。

添加單個元素

為了向字典中添加新元素,可以使用方括號 []。如果鍵已經存在,其值將會被更新。


person = {"name": "Alice", "age": 25}

# 添加新元素到字典中
person["city"] = "New York"

# 輸出更新後的字典
print(person)  # 輸出: {'name': 'Alice', 'age': 25, 'city': 'New York'}

如果鍵不存在則添加元素

有時需要在字典中僅當鍵不存在時添加元素。這可以通過使用條件語句來實現。


person = {"name": "Alice", "age": 25}

# 僅當鍵不存在時添加元素
if "city" not in person:
    person["city"] = "New York"

# 輸出更新後的字典
print(person)  # 輸出: {'name': 'Alice', 'age': 25, 'city': 'New York'}

使用 update() 方法添加多個元素

update() 方法允許一次添加多對鍵值對。可以傳遞另一個字典或包含鍵值對的可迭代對象。


person = {"name": "Alice", "age": 25}
updates = {"city": "New York", "country": "USA"}

# 使用新元素更新字典
person.update(updates)

# 輸出更新後的字典
print(person)  # 輸出: {'name': 'Alice', 'age': 25, 'city': 'New York', 'country': 'USA'}

也可以使用命名參數:


person = {"name": "Alice", "age": 25}

# 使用命名參數來添加元素
person.update(city="New York", country="USA")

# 輸出更新後的字典
print(person)  # 輸出: {'name': 'Alice', 'age': 25, 'city': 'New York', 'country': 'USA'}

5.2 修改元素

修改元素的操作與添加元素類似,但如果鍵已有舊值,則會被新值替換。

更新鍵的值

可以直接為字典中的現有鍵分配新值來更新其值。


person = {"name": "Alice", "age": 25, "city": "New York"}

# 根據鍵更新值
person["age"] = 26

# 輸出更新後的字典
print(person)  # 輸出: {'name': 'Alice', 'age': 26, 'city': 'New York'}

使用 setdefault() 方法

setdefault() 方法返回指定鍵的值。如果鍵不存在,則將其與默認值一起添加到字典中。


person = {"name": "Alice", "age": 25}

# 使用 setdefault 添加元素
city = person.setdefault("city", "New York")

# 輸出城市的值
print(city)  # 輸出: New York

# 輸出更新後的字典
print(person)  # 輸出: {'name': 'Alice', 'age': 25, 'city': 'New York'}

使用 update() 方法更新元素

您可以使用 update() 方法來使用另一個字典或可迭代對象更新字典中的元素值。


person = {"name": "Alice", "age": 25}
updates = {"age": 30, "city": "New York"}

# 使用 update() 方法更新字典
person.update(updates)

# 輸出更新後的字典
print(person)  # 輸出: {'name': 'Alice', 'age': 30, 'city': 'New York'}

5.3 删除字典元素

可以通過多種方式從字典中刪除元素:

使用 del 運算符刪除元素

del 運算符根據指定的鍵刪除字典中的鍵值對。


person = {"name": "Alice", "age": 25, "city": "New York"}

# 根據鍵刪除元素
del person["age"]

# 輸出更新後的字典
print(person)  # 輸出: {'name': 'Alice', 'city': 'New York'}

使用 pop(key, def_value) 方法刪除元素

pop() 方法刪除指定鍵的元素並返回其值。如果鍵不存在,可以指定默認值以避免錯誤。


person = {"name": "Alice", "age": 25, "city": "New York"}

# 刪除元素並獲取其值
age = person.pop("age")

# 輸出刪除的值
print(age)  # 輸出: 25

# 輸出更新後的字典
print(person)  # 輸出: {'name': 'Alice', 'city': 'New York'}

使用 popitem() 方法刪除最後添加的元素

popitem() 方法刪除並返回最後添加的鍵值對。在舊版本的 Python 中,它特別適用於處理無序字典。


person = {"name": "Alice", "age": 25, "city": "New York"}

# 刪除並獲取最後添加的鍵值對
last_item = person.popitem()

# 輸出刪除的鍵值對
print(last_item)  # 輸出: ('city', 'New York')

# 輸出更新後的字典
print(person)  # 輸出: {'name': 'Alice', 'age': 25}

使用 clear() 方法清空字典

clear() 方法刪除字典中的所有元素,使其變得空白。


person = {"name": "Alice", "age": 25, "city": "New York"}

# 清空字典
person.clear()

# 輸出清空後的字典
print(person)  # 輸出: {}
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION