page contents

Python 字典删除元素全攻略!5种方法+实例,一看就会

Python提供了5种核心删除方法,适用不同场景,我用最通俗易懂的语言+完整可运行案例,一次性讲透,直接复制就能用!

attachments-2026-05-i3UcrMas6a1a45c8b78fd.png

字典(dict)是Python中最常用的数据结构之一,日常编程中删除字典元素是高频操作。

Python提供了5种核心删除方法,适用不同场景,我用最通俗易懂的语言+完整可运行案例,一次性讲透,直接复制就能用!

一、先准备一个测试字典

所有案例都用这个字典演示,方便对照:

# 定义一个用户信息字典
user = {
    "name": "张三",
    "age": 25,
    "gender": "男",
    "city": "北京",
    "job": "程序员"
}
print("原始字典:", user)

二、5种删除元素方法(含优缺点+场景)

方法1:del 语句 —— 删除指定键/整个字典

del 是Python基础删除语句,直接删除指定键值对,无返回值。

1. 删除单个键值对

user = {"name":"张三","age":25,"gender":"男","city":"北京","job":"程序员"}
# 删除 age 键对应的元素
del user["age"]  
print("删除age后:", user)
# 输出:{'name': '张三', 'gender': '男', 'city': '北京', 'job': '程序员'}

2. 删除整个字典(字典彻底消失)

del user  
# print(user)  # 报错:NameError: name 'user' is not defined

优点:语法简单,直接删除
缺点:删除不存在的键会直接报错

方法2:pop() —— 安全删除+返回值

pop(key) 是最推荐的安全删除方法:
删除指定键,并返回被删除的值;键不存在时可设置默认值,不报错。

user = {"name":"张三","age":25,"gender":"男","city":"北京","job":"程序员"}

# 删除 job 键,返回被删除的值
deleted_value = user.pop("job")  
print("被删除的值:", deleted_value)  # 输出:程序员
print("删除后字典:", user)

# 键不存在时,设置默认值,不报错
result = user.pop("height", "键不存在")
print(result)  # 输出:键不存在

优点:安全不报错,可获取删除的值
适用场景:不确定键是否存在,又不想程序崩溃

方法3:popitem() —— 删除最后一个元素

Python 3.7+ 字典保留插入顺序,popitem() 默认删除最后插入的键值对,并返回该键值对。

user = {"name":"张三","age":25,"gender":"男","city":"北京","job":"程序员"}
# 删除最后一个元素
last_item = user.popitem()  
print("被删除的键值对:", last_item)  # 输出:('job', '程序员')
print("删除后字典:", user)

优点:快速删除末尾元素,无需指定键
适用场景:按顺序删除、栈结构操作

方法4:clear() —— 清空字典(保留空字典)

clear() 会删除所有元素,但保留字典本身(变成空字典),和del不同。

user = {"name":"张三","age":25,"gender":"男","city":"北京","job":"程序员"}
# 清空所有元素
user.clear()  
print("清空后:", user)  # 输出:{}

优点:快速清空,不删除字典对象
 适用场景:需要重复使用字典时

方法5:字典推导式 —— 条件删除(高级用法)

可以按条件删除元素,比如删除年龄小于30、值为None的键值对,非常灵活。

# 新字典:删除值为"男"的所有键值对
user = {"name":"张三","age":25,"gender":"男","city":"北京","job":"程序员"}
new_user = {key: value for key, value in user.items() if value != "男"}
print("条件删除后:", new_user)
# 输出:{'name': '张三', 'age': 25, 'city': '北京', 'job': '程序员'}

优点:灵活、一行代码完成批量条件删除
适用场景:批量过滤、条件删除

 更多相关技术内容咨询欢迎前往并持续关注好学星城论坛了解详情。

想高效系统的学习Python编程语言,推荐大家关注一个微信公众号:Python编程学习圈。每天分享行业资讯、技术干货供大家阅读,关注即可免费领取整套Python入门到进阶的学习资料以及教程,感兴趣的小伙伴赶紧行动起来吧。

attachments-2022-05-rLS4AIF8628ee5f3b7e12.jpg

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
Pack
Pack

2083 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 2228 文章
  3. Pack 2083 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章