第26集:字典基础操作

本集学习目标

  • 理解字典的概念和特点
  • 掌握字典的创建方法
  • 学会字典的增删改查操作
  • 理解键值对的概念
  • 掌握字典的遍历方法
  • 通过实际练习掌握字典的使用

什么是字典?

字典(Dictionary)是Python中最重要的数据结构之一,用于存储键值对(Key-Value)的数据。

字典的特点

  1. 使用花括号 {} 创建
  2. 键值对之间用冒号 : 分隔
  3. 键值对之间用逗号 , 分隔
  4. 字典是可变的(可以修改)
  5. 字典是无序的(Python 3.7+保持插入顺序)
  6. 键必须是不可变类型(如字符串、数字、元组)
  7. 值可以是任意类型

创建字典

基本创建方式

# 空字典
dict1 = {}

# 创建字典
dict2 = {"name": "张三", "age": 18, "city": "北京"}
dict3 = {1: "one", 2: "two", 3: "three"}

使用dict()函数

# 从键值对创建
dict1 = dict(name="李四", age=20)
print(dict1)  # {'name': '李四', 'age': 20}

# 从列表创建
dict2 = dict([("name", "王五"), ("age", 22)])
print(dict2)  # {'name': '王五', 'age': 22}

访问字典

使用键访问

student = {"name": "张三", "age": 18, "city": "北京"}

print(student["name"])  # 张三
print(student["age"])   # 18

使用get()方法

student = {"name": "张三", "age": 18}

print(student.get("name"))     # 张三
print(student.get("city"))     # None(键不存在)
print(student.get("city", "未知"))  # 未知(设置默认值)

键不存在的情况

student = {"name": "张三"}

# 使用[]访问,键不存在会报错
# print(student["age"])  # KeyError

# 使用get(),键不存在返回None或默认值
print(student.get("age"))  # None

增删改操作

添加元素

student = {"name": "张三", "age": 18}

student["city"] = "北京"
print(student)  # {'name': '张三', 'age': 18, 'city': '北京'}

修改元素

student = {"name": "张三", "age": 18}

student["age"] = 19
print(student)  # {'name': '张三', 'age': 19}

删除元素 - del

student = {"name": "张三", "age": 18, "city": "北京"}

del student["city"]
print(student)  # {'name': '张三', 'age': 18}

删除元素 - pop()

student = {"name": "张三", "age": 18, "city": "北京"}

city = student.pop("city")
print(city)      # 北京
print(student)   # {'name': '张三', 'age': 18}

清空字典 - clear()

student = {"name": "张三", "age": 18}

student.clear()
print(student)  # {}

遍历字典

遍历键

student = {"name": "张三", "age": 18, "city": "北京"}

for key in student:
    print(key)

遍历键和值

student = {"name": "张三", "age": 18, "city": "北京"}

for key, value in student.items():
    print(f"{key}: {value}")

遍历值

student = {"name": "张三", "age": 18, "city": "北京"}

for value in student.values():
    print(value)

实际应用案例

案例1:学生信息管理

student = {
    "name": "张三",
    "age": 18,
    "gender": "男",
    "city": "北京"
}

# 添加成绩
student["scores"] = [85, 92, 78]

# 修改年龄
student["age"] = 19

# 输出信息
print("学生信息:")
for key, value in student.items():
    print(f"  {key}: {value}")

案例2:单词计数

text = "hello world hello python"

# 统计单词出现次数
word_count = {}
for word in text.split():
    if word in word_count:
        word_count[word] += 1
    else:
        word_count[word] = 1

print(word_count)
# {'hello': 2, 'world': 1, 'python': 1}

本集小结

  1. 字典存储键值对数据
  2. 使用花括号 {} 创建
  3. 键必须是不可变类型
  4. 值可以是任意类型
  5. 使用键访问值:dict[key]
  6. 使用get()安全访问
  7. delpop()删除元素
  8. 使用items()遍历键值对

课后练习

练习1:创建字典

创建包含姓名、年龄、城市的字典。

练习2:访问和修改

访问字典中的值,然后修改某个值。

练习3:添加和删除

添加新键值对,删除某个键。

练习4:遍历字典

使用for循环遍历字典的键和值。

练习5:单词统计

统计字符串中每个单词出现的次数。

下集预告

下一集我们将学习第27集:字典常用方法。Python提供了丰富的字典方法,如keys()、values()、update()等。

敬请期待!

« 上一篇 元组基础操作 下一篇 » 字典常用方法