第8天:字典(Dictionary)
太棒了!今天是 第8天:字典(Dictionary) 。字典是 Python 中非常重要且强大的数据结构,它允许你通过 键(key) 来快速访问 值(value) 。字典可以存储多种类型的数据,非常适合用来处理各种映射关系。
✅ 第8天学习目标:
- ✅ 学会创建和访问 字典(Dictionary) 。
- ✅ 掌握字典常用的操作(增、删、查、改)。
- ✅ 理解字典的使用场景和与其他数据结构的区别。
一、字典的基本概念
字典是一种 无序 的集合,它以 键值对(key-value pair) 形式存储数据。字典的键是 唯一 的,值可以是任意类型的数据。
1.1 创建字典
你可以使用 花括号 {} 来创建字典,键值对之间用冒号 : 分隔,键值对之间用逗号 , 分隔。
# 创建一个字典
person = {"name": "张三", "age": 18, "city": "北京"}
print(person) # 输出:{'name': '张三', 'age': 18, 'city': '北京'}1.2 访问字典元素
字典通过 键(key) 来访问对应的值(value)。你可以使用 [] 来获取某个键对应的值。
person = {"name": "张三", "age": 18, "city": "北京"}
# 通过键访问值
print(person["name"]) # 输出:张三
print(person["age"]) # 输出:18如果访问的键不存在,会抛出 KeyError 错误。
二、字典的常用操作
2.1 添加或修改元素
- 添加元素:直接通过键来赋值。
- 修改元素:如果键已经存在,赋值操作会修改原有的值。
person = {"name": "张三", "age": 18}
# 添加一个新的键值对
person["city"] = "北京"
print(person) # 输出:{'name': '张三', 'age': 18, 'city': '北京'}
# 修改已有的键值对
person["age"] = 20
print(person) # 输出:{'name': '张三', 'age': 20, 'city': '北京'}2.2 删除元素
可以使用 del 语句删除字典中的某个键值对,或者使用 pop() 删除指定键的键值对,并返回对应的值。
person = {"name": "张三", "age": 20, "city": "北京"}
# 使用 del 删除
del person["city"]
print(person) # 输出:{'name': '张三', 'age': 20}
# 使用 pop 删除并返回值
age = person.pop("age")
print(age) # 输出:20
print(person) # 输出:{'name': '张三'}2.3 清空字典
使用 clear() 方法可以清空字典中的所有元素。
person = {"name": "张三", "age": 20, "city": "北京"}
person.clear()
print(person) # 输出:{}2.4 获取所有键、值或键值对
-
keys() :返回所有的键。 -
values() :返回所有的值。 -
items() :返回所有的键值对。
person = {"name": "张三", "age": 20, "city": "北京"}
# 获取所有键
print(person.keys()) # 输出:dict_keys(['name', 'age', 'city'])
# 获取所有值
print(person.values()) # 输出:dict_values(['张三', 20, '北京'])
# 获取所有键值对
print(person.items()) # 输出:dict_items([('name', '张三'), ('age', 20), ('city', '北京')])2.5 使用 get() 获取元素
使用 get() 方法来安全地访问字典中的元素。如果键不存在,get() 返回 None,而不会抛出错误。
person = {"name": "张三", "age": 20}
# 使用 get() 获取值
print(person.get("name")) # 输出:张三
print(person.get("address")) # 输出:None(没有这个键,不报错)三、字典的应用场景
字典特别适合用于以下场景:
- 需要根据 唯一键 快速查找数据。
- 需要存储 映射关系,例如一个人的姓名、年龄、住址。
- 用于统计问题,比如统计单词出现的频率。
例如,统计一个文本中每个单词出现的次数:
text = "hello world hello python python python"
words = text.split()
word_count = {}
for word in words:
if word in word_count:
word_count[word] += 1
else:
word_count[word] = 1
print(word_count) # 输出:{'hello': 2, 'world': 1, 'python': 3}✅ 今天的练习题
练习1:创建一个字典
- 创建一个字典,包含你的姓名、年龄和所在城市。
- 输出字典中存储的所有信息。
练习2:修改字典中的元素
- 在上述字典中,修改年龄为 25,修改城市为“上海”。
- 再次输出更新后的字典。
练习3:删除字典中的元素
- 删除字典中的城市信息,并输出更新后的字典。
- 使用
get()方法访问一个不存在的键,打印输出结果。
练习4:统计字典元素
- 创建一个字典,存储不同商品的价格,例如:
{"apple": 3, "banana": 2, "orange": 4}。 - 编写一个程序,增加一个商品(例如:
{"grape": 5}),然后输出所有商品的价格。
✅ 今天的任务总结(你对照检查)
今天你应该掌握了:
- ✅ 字典的创建和访问。
- ✅ 字典的常用操作:添加、修改、删除、查询。
- ✅ 字典在处理映射关系和统计问题中的应用。
👉 现在你可以这样做:
1️⃣ 先完成这 4 个练习题
2️⃣ 如果有问题,随时把代码发给我,我会帮助你分析和修改
3️⃣ 完成后,我们就可以进入 第 9 天:函数(Functions) 了!
继续加油,字典是 Python 编程中非常有用的工具,你已经掌握了它的基本用法!
相关推荐
- 第 16 天:常用第三方库(requests + pandas 入门) 2026-01-03
- 第 17 天:第一个完整综合项目实战 2026-01-03
- 第 18 天:NumPy + 高级 Pandas + 数据可视化入门 2026-01-03
- 第 19 天:机器学习入门(scikit-learn) 2026-01-03
- 第 20 天:机器学习分类模型(逻辑回归 Classification) 2026-01-03
评论0
暂时没有评论