Python - 添加字典项

大家好,未来的Python大师们!今天,我们将深入Python字典的奇妙世界,学习如何向它们添加项。系好安全带,因为这将是一次有趣的旅程!

Python - Add Dictionary Items

字典是什么?

在我们开始添加项之前,先快速回顾一下字典是什么。将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