当前位置:首页>python>一文吃透Python字典!12个高频常用方法+实战案例,新手直接抄作业

一文吃透Python字典!12个高频常用方法+实战案例,新手直接抄作业

  • 2026-09-02 16:15:03
一文吃透Python字典!12个高频常用方法+实战案例,新手直接抄作业

字典(dict)是Python中最常用、最重要的数据结构之一,相当于「键值对映射表」,就像我们用的字典:键(key)是单词,值(value)是释义,通过单词快速找释义,查询速度超快!

不管是爬虫、数据分析、后端开发还是日常写脚本,字典方法都能大幅提升效率。今天整理了12个高频必用方法,配超详细实战案例,新手一看就懂、一学就会!

一、先认识Python字典

字典是无序、可变、键唯一的集合,基础格式:

# 空字典
dict1 = {}
# 带数据的字典
student = {"name": "小明", "age": 18, "gender": "男"}
  • key(键):必须是不可变类型(字符串、数字、元组),不能重复
  • value(值):任意类型,可重复

二、12个字典常用方法+实战案例

1. 访问字典:dict[key] / get()

最基础的取值操作,两种方式区别很大!

student = {"name": "小明", "age": 18}

# 方法1:直接用键取值(键不存在会报错)
print(student["name"])  # 输出:小明

# 方法2:get() 方法(键不存在返回None,不报错)
print(student.get("age"))  # 输出:18
print(student.get("score", "未录入分数"))  # 键不存在,返回默认值

✅ 适用场景:不确定键是否存在时,优先用get(),避免程序崩溃。

2. 修改字典:dict[key] = 新值

修改已有键的值,直接赋值即可:

student = {"name": "小明", "age": 18}
student["age"] = 19# 修改年龄
print(student)  # 输出:{'name': '小明', 'age': 19}

3. 添加键值对:dict[key] = 新值 / update()

两种添加方式,批量添加用update()更方便:

student = {"name": "小明", "age": 18}

# 方法1:单个添加
student["score"] = 95
print(student)  # {'name': '小明', 'age': 18, 'score': 95}

# 方法2:update() 批量添加/修改
student.update({"gender": "男", "class": "高一1班"})
print(student)  # 新增gender、class键值对

4. 删除键值对:del / pop() / popitem() / clear()

4种删除方法,适用场景不同:

student = {"name": "小明", "age": 18, "score": 95}

# 1. del:删除指定键值对(键不存在报错)
del student["age"]
print(student)  # {'name': '小明', 'score': 95}

# 2. pop():删除指定键,并返回对应的值
score = student.pop("score")
print(score)  # 输出:95
print(student)  # {'name': '小明'}

# 3. popitem():删除最后添加的键值对(Python3.7+)
student = {"name": "小明", "age": 18}
student.popitem()
print(student)  # {'name': '小明'}

# 4. clear():清空整个字典
student.clear()
print(student)  # 输出:{}

✅ 记忆口诀:删指定用del,删完要值用pop,删最后用popitem,清空用clear。

5. 获取所有键:keys()

快速提取字典中所有的键(key):

student = {"name": "小明", "age": 18, "score": 95}
keys = student.keys()
print(keys)  # 输出:dict_keys(['name', 'age', 'score'])

# 转列表使用
print(list(keys))  # ['name', 'age', 'score']

6. 获取所有值:values()

快速提取字典中所有的值(value):

student = {"name": "小明", "age": 18, "score": 95}
values = student.values()
print(list(values))  # ['小明', 18, 95]

7. 获取所有键值对:items()

最常用方法!遍历字典必备,一次性拿到键和值:

student = {"name": "小明", "age": 18, "score": 95}

# 遍历键值对
for key, value in student.items():
    print(f"键:{key},值:{value}")

输出结果:

键:name,值:小明
键:age,值:18
键:score,值:95

8. 复制字典:copy()

避免直接赋值导致的原字典被修改,必须用copy():

# 错误示范:直接赋值,两个字典指向同一个数据
student1 = {"name": "小明"}
student2 = student1
student2["age"] = 18
print(student1)  # 原字典被修改:{'name': '小明', 'age': 18}

# 正确示范:copy() 浅拷贝,独立数据
student1 = {"name": "小明"}
student2 = student1.copy()
student2["age"] = 18
print(student1)  # 原字典不变:{'name': '小明'}

9. 字典长度:len()

统计字典中有多少组键值对:

student = {"name": "小明", "age": 18, "score": 95}
print(len(student))  # 输出:3

10. 判断键是否存在:in

检查字典中是否包含某个键,返回True/False:

student = {"name": "小明", "age": 18}
print("name"in student)  # 输出:True
print("score"in student)  # 输出:False

11. 设置默认值:setdefault()

键存在则返回原值,不存在则添加默认键值对:

student = {"name": "小明"}
# 键存在,返回原值
print(student.setdefault("name", "小红"))  # 小明
# 键不存在,添加键值对
print(student.setdefault("age", 18))  # 18
print(student)  # {'name': '小明', 'age': 18}

12. 快速创建字典:fromkeys()

用指定键创建新字典,统一设置初始值:

# 给3个键设置默认值0
keys = ["name", "age", "score"]
student = dict.fromkeys(keys, 0)
print(student)  # {'name': 0, 'age': 0, 'score': 0}

三、综合实战:学生信息管理

把所有方法串起来,写一个完整的小案例,新手直接练:

# 1. 创建字典
student = {}
print("初始空字典:", student)

# 2. 批量添加信息
student.update({"name": "小红", "age": 17, "subject": "数学"})
print("添加后:", student)

# 3. 修改年龄
student["age"] = 18

# 4. 添加分数,不存在则默认80
student.setdefault("score", 80)

# 5. 遍历所有信息
print("\n学生完整信息:")
for k, v in student.items():
    print(f"{k}:{v}")

# 6. 删除科目
student.pop("subject")

# 7. 统计信息数量
print(f"\n剩余信息条数:{len(student)}")

# 8. 清空字典
student.clear()
print("清空后:", student)

四、新手必记3个核心要点

  1. 键唯一:同一个字典中,键不能重复,重复会覆盖旧值
  2. 取值安全:不确定键是否存在,用get()不报错
  3. 遍历首选:items()是遍历字典最方便的方法,没有之一

五、方法速查表

方法
功能
dict[key]
/get()
取值
update()
批量添加/修改
del
/pop()/clear()
删除键值对/清空
keys()
获取所有键
values()
获取所有值
items()
获取所有键值对
copy()
复制字典
len()
统计长度

总结

  1. 本文覆盖12个Python字典高频方法,全是工作/学习必用款;
  2. 所有案例可直接复制运行,新手零门槛上手;
  3. 字典是Python核心工具,吃透这些方法,能搞定80%的键值对处理场景!

最新文章

随机文章