python字典中删除键值的方法

简介: python字典中删除键值的方法

一、pop()方法删除key

Python字典是一种无序的映射数据类型,通过键值对的形式进行存储,可以使用键来快速找到对应的值。在某些情况下,我们可能需要在字典中删除某个键,这时候就可以使用Python字典提供的pop()方法。

pop()方法用于删除字典中指定的键,并返回该键对应的值。使用该方法时需传入一个参数,即要删除的键的名称。

# 定义一个字典
fruit_dict = {
   'apple': 10, 'banana': 20, 'orange': 30}
# 删除键为"apple"的元素
res = fruit_dict.pop('apple')
# 输出删除后的字典和返回的值
print(fruit_dict) # {'banana': 20, 'orange': 30}
print(res) # 10

注:若要删除的键不存在,则pop()会报错;若要删除的键不存在,可设置默认值,避免报错。

二、del删除字典中key-value

Python字典中的删除操作还可以使用del语句。del语句可以用于删除字典中的键值对。

# 定义一个字典
fruit_dict = {
   'apple': 10, 'banana': 20, 'orange': 30}
# 删除键为"apple"的元素
del fruit_dict['apple']
# 输出删除后的字典
print(fruit_dict) # {'banana': 20, 'orange': 30}

三、dict comprehension删除key-value

另外一种Python中删除字典key的方式是使用字典推导式。字典推导式是一种创建字典的语法,它可以根据已有的字典来创建一个新的字典。通过将需要删除的键从原字典中排除,就可以实现删除操作。

# 定义一个字典
fruit_dict = {
   'apple': 10, 'banana': 20, 'orange': 30}
# 删除键为"apple"的元素
fruit_dict = {
   k: v for k, v in fruit_dict.items() if k != 'apple'}
# 输出删除后的字典
print(fruit_dict) # {'banana': 20, 'orange': 30}

四、使用filter()函数删除key-value

使用filter()函数可以过滤掉不需要的键值对,来实现删除操作。

# 定义一个字典
fruit_dict = {
   'apple': 10, 'banana': 20, 'orange': 30}
# 删除键为"apple"的元素
fruit_dict = dict(filter(lambda x: x[0] != 'apple', fruit_dict.items()))
# 输出删除后的字典
print(fruit_dict) # {'banana': 20, 'orange': 30}

五、使用字典的popitem()方法删除最后一个元素

popitem()方法用于删除字典中的最后一个键值对,并返回该键值对。在Python3.7之前,字典是无序的,因此,popitem()会删除任意一个键值对。而在Python3.7及以后的版本中,字典是有序的,popitem()会删除最后一个键值对。

# 定义一个字典
fruit_dict = {
   'apple': 10, 'banana': 20, 'orange': 30}
# 删除最后一个元素
fruit_dict.popitem()
# 输出删除后的字典
#学习中遇到问题没人解答?小编创建了一个Python学习交流群:711312441
print(fruit_dict) # {'apple': 10, 'banana': 20}
相关文章
|
10天前
|
存储 Python
python将字典的键或值解包到变量中
【7月更文挑战第5天】
14 4
|
10天前
|
Python
|
10天前
|
Python
python解包字典到新的字典
【7月更文挑战第5天】
12 1
|
3天前
|
数据可视化 PyTorch Serverless
Python 性能分析的几个方法,找到你代码中的那个她
我们在编写了一个脚本在笔记本上处理一些数据,然后去喝杯咖啡或者上了个厕所,15分钟后回来时发现进度才完成不到10%。 我们的脑袋里面就会发问:为什么这么慢?究竟是在哪个部分是慢的?是读取数据、处理数据还是保存数据?如何让它变快?它真的很慢吗? 有了这个疑问我们尝试去解决这个问题,下面我们介绍几个 python 性能分析的工具。
|
3天前
|
存储 Python 容器
Python字典
【7月更文挑战第12天】Python字典
6 2
|
5天前
|
算法 计算机视觉 索引
python---OpenCv(二),背景分离方法较有意思
python---OpenCv(二),背景分离方法较有意思
|
6天前
|
存储 Python
【Python】已解决:Python读取字典查询键报错“KeyError: ‘d‘”
【Python】已解决:Python读取字典查询键报错“KeyError: ‘d‘”
12 1
|
7天前
|
SQL 数据库 Python
【Python】已完美解决:(executemany()方法字符串参数问题)more placeholders in sql than params available
【Python】已完美解决:(executemany()方法字符串参数问题)more placeholders in sql than params available
8 1
|
11天前
|
Python
Python中字典 直接解包
【7月更文挑战第4天】
17 3
|
10天前
|
Python
python解包字典到函数参数
【7月更文挑战第5天】
11 2