【python系列】python数据类型之字典
掌握 Python 字典(Dictionary)数据类型
Python 中的字典(Dictionary)是一种非常重要的数据结构,用于存储键值对。它类似于现实生活中的字典,允许快速查找对应的值。本文将详细介绍字典的定义、常用操作及其扩展,并附带练习题帮助巩固知识。
1. 定义:什么是字典?
字典是 Python 中的一种内置数据类型,用于存储键值对(key-value pairs)。它是无序的、可变的,并且键必须是唯一的且不可变(如字符串、数字或元组),而值可以是任意数据类型。
字典的定义使用大括号 {}
,键值对通过冒号 :
分隔,多个键值对用逗号 ,
分隔。
示例
# 定义一个字典
person = {
"name": "Alice",
"age": 25,
"city": "New York"
}
print(person) # 输出:{'name': 'Alice', 'age': 25, 'city': 'New York'}
2. 操作:字典的基本和高级操作
2.1 创建字典
- 使用大括号直接创建:
my_dict = {"key1": "value1", "key2": "value2"}
- 使用 dict() 函数创建:
my_dict = dict(key1="value1", key2="value2")
2.2 访问字典中的值
通过键访问字典中的值:
person = {"name": "Alice", "age": 25}
print(person["name"]) # 输出:Alice
访问不存在的键会抛出 KeyError,可以使用 get() 方法避免:
print(person.get("city", "Not Found")) # 输出:Not Found
2.3 修改字典
person["age"] = 30 # 修改值
person["city"] = "Los Angeles" # 添加新键值对
2.4 删除字典中的键值对
- 使用 del 删除:
del person["age"]
- 使用 pop() 方法:
city = person.pop("city", "Not Found")
2.5 遍历字典
- 遍历键:
for key in person.keys(): print(key)
- 遍历值:
for value in person.values(): print(value)
- 遍历键值对:
for key, value in person.items(): print(key, value)
2.6 字典的常用方法
方法 | 描述 |
---|---|
dict.keys() | 返回字典中所有键 |
dict.values() | 返回字典中所有值 |
dict.items() | 返回字典中所有键值对 |
dict.update() | 更新字典,合并另一个字典的键值对 |
dict.clear() | 清空字典 |
2.7 字典的高级操作
- 字典推导式:
squares = {x: x**2 for x in range(5)} print(squares) # 输出:{0: 0, 1: 1, 2: 4, 3: 9, 4: 16}
- 嵌套字典:
people = { "Alice": {"age": 25, "city": "New York"}, "Bob": {"age": 30, "city": "San Francisco"} } print(people["Alice"]["city"]) # 输出:New York
3. 总结与练习题
字典是 Python 中强大且灵活的数据结构,适用于需要快速查找、动态更新的场景。通过键值对的方式,字典可以轻松表示复杂数据。掌握字典的基本操作与高级用法,可以极大提升代码效率。
练习题
-
基础练习: 创建一个字典存储学生的姓名和成绩,然后打印所有学生的姓名和成绩。
-
操作练习: 使用一个字典存储一周的天气信息(例如:{“Monday”: “Sunny”, “Tuesday”: “Rainy”})。
- 添加周末天气数据
- 修改某一天的天气
- 打印所有日期和对应天气
-
综合练习: 编写一个程序,统计一段字符串中每个字符出现的次数。例如:
text = "hello world" # 输出:{'h': 1, 'e': 1, 'l': 3, 'o': 2, ' ': 1, 'w': 1, 'r': 1, 'd': 1}