Python - 添加字典项
大家好,未来的Python大师们!今天,我们将深入Python字典的奇妙世界,学习如何向它们添加项。系好安全带,因为这将是一次有趣的旅程!
字典是什么?
在我们开始添加项之前,先快速回顾一下字典是什么。将Python字典想象成现实世界的字典,但不是单词和定义,我们有键和值。它就像一个神奇的盒子,你可以使用唯一的标签存储和检索信息。
# 一个简单的字典
my_dict = {"name": "Alice", "age": 25, "city": "Wonderland"}
现在,让我们探索一下向这个神奇盒子添加项的各种方法!
添加字典项
使用方括号添加字典项
向字典添加项的最简单方法是使用方括号。这就像向你的词汇表中添加一个新词!
# 使用方括号添加新项
my_dict["occupation"] = "软件开发者"
print(my_dict)
输出:
{'name': 'Alice', 'age': 25, 'city': 'Wonderland', 'occupation': '软件开发者'}
在这个例子中,我们向字典添加了一个新的键值对。键是"occupation",值是"软件开发者"。很简单!
使用update()方法添加字典项
update()
方法就像邀请一群新朋友参加你的派对。你可以一次添加多个项!
# 使用update()添加多个项
my_dict.update({"hobby": "阅读", "favorite_color": "蓝色"})
print(my_dict)
输出:
{'name': 'Alice', 'age': 25, 'city': 'Wonderland', 'occupation': '软件开发者', 'hobby': '阅读', 'favorite_color': '蓝色'}
在这里,我们一次添加了两个新的键值对。这就像一石二鸟!
使用解包添加字典项
解包就像打开一个惊喜盒。你可以将两个字典合并为一个!
# 解包字典
dict1 = {"a": 1, "b": 2}
dict2 = {"c": 3, "d": 4}
combined_dict = {**dict1, **dict2}
print(combined_dict)
输出:
{'a': 1, 'b': 2, 'c': 3, 'd': 4}
**
操作符解包字典,使我们能够无缝地合并它们。
使用联合操作符(|)添加字典项
联合操作符|
就像两个字典之间的友好握手。它在Python 3.9及更高版本中可用。
# 使用联合操作符
dict1 = {"x": 10, "y": 20}
dict2 = {"z": 30}
merged_dict = dict1 | dict2
print(merged_dict)
输出:
{'x': 10, 'y': 20, 'z': 30}
这个操作符通过组合两个字典的键值对来创建一个新的字典。
使用"|="操作符添加字典项
|=
操作符就像更新你的衣柜。它将一个字典中的项添加到另一个字典中,修改原始字典。
# 使用 |= 操作符
dict1 = {"apple": 1, "banana": 2}
dict2 = {"cherry": 3}
dict1 |= dict2
print(dict1)
输出:
{'apple': 1, 'banana': 2, 'cherry': 3}
这个操作符更新dict1
,原地添加dict2
中的项。
使用setdefault()方法添加字典项
setdefault()
方法就像一个礼貌的客人。如果键不存在,它会添加带有默认值的键。如果它存在,就让它保持原样。
# 使用setdefault()
my_dict = {"name": "Bob", "age": 30}
my_dict.setdefault("city", "未知")
print(my_dict)
my_dict.setdefault("age", 40) # 这不会改变现有的值
print(my_dict)
输出:
{'name': 'Bob', 'age': 30, 'city': '未知'}
{'name': 'Bob', 'age': 30, 'city': '未知'}
注意"city"是如何添加了默认值的,但"age"的值保持不变。
使用collections.defaultdict()方法添加字典项
defaultdict
就像一个永远不会说"KeyError"的神奇字典。它会自动创建带有默认值的新键。
from collections import defaultdict
# 使用defaultdict
fruit_count = defaultdict(int)
fruits = ["apple", "banana", "apple", "cherry", "banana", "apple"]
for fruit in fruits:
fruit_count[fruit] += 1
print(dict(fruit_count))
输出:
{'apple': 3, 'banana': 2, 'cherry': 1}
在这个例子中,我们正在计算水果。defaultdict(int)
会自动用默认值0初始化新键,允许我们增加计数,而不必担心KeyErrors。
方法总结
以下是我们介绍的所有方法的快速参考表:
方法 | 描述 | Python版本 |
---|---|---|
方括号([] ) |
添加单个项 | 所有 |
update() |
添加多个项 | 所有 |
解包(** ) |
合并字典 | 3.5+ |
联合操作符(| ) |
合并字典 | 3.9+ |
|= 操作符 |
更新和合并 | 3.9+ |
setdefault() |
添加带有默认值的项 | 所有 |
collections.defaultdict() |
创建带有默认工厂的字典 | 所有 |
就是这些了,各位!你现在掌握了一套方法,可以在Python中添加字典项。记住,熟能生巧,所以不要害怕在自己的代码中尝试这些方法。祝编码愉快,愿你的字典总是充满了令人兴奋的键值对!
Credits: Image by storyset