首页 > 编程语言 >python字典中删除键值的方法

python字典中删除键值的方法

时间:2023-12-28 17:38:32浏览次数:46  
标签:20 apple 删除 python fruit dict 键值 字典

一、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}

标签:20,apple,删除,python,fruit,dict,键值,字典
From: https://blog.51cto.com/u_14246112/9016761

相关文章

  • 【python爬虫课程设计】类型数据爬取+数据可视化
    【python爬虫课程设计】类型数据爬取+数据可视化选题的背景稀土掘金作为国内最大的开发者社区,汇集了大量优质的技术文章和资源。通过爬取稀土掘金数据,可以深入了解当前技术领域的热点、趋势以及开发者的需求,为相关企业和机构提供有价值的参考信息。预期目标是分析热门技术主题、......
  • Python实战:从数据库到Excel的复杂查询结果处理【下】
    一、背景描述在上篇和中篇,我们已经实现从数据库查询到数据,根据指定条件将处理后的数据写入到excel中,并解决了excel中数据格式异常的问题。而目前生成的excel表格的宽度、表格的样式、字体、单元格背景色等均是默认的,excel结果文件是需要交给运营同学查看的,也就是说表格样式要稍微做......
  • 【python机器学习课程设计】驾驶员睡意检测——机器模型训练
    一.选题背景  驾驶员的疲劳和睡意是道路交通安全的重要隐患之一。据统计,疲劳驾驶导致的交通事故占比较高,甚至可能造成生命和财产的巨大损失。因此,开发一种有效的驾驶员睡意检测系统对于提高交通安全具有重要意义。  通过监测驾驶员的眼部数据等,可以建立一个机器学习模型来......
  • Python - 输出一个最简单的log
    输出一个最简单的log点击查看代码importlogging#创建logger对象logger=logging.getLogger(__name__)logger.setLevel(logging.DEBUG)#log等级总开关#log输出格式formatter=logging.Formatter("%(asctime)s-%(filename)s[line:%(lineno)d]-%(levelname)s:......
  • 【Lidar】Open3D点云K-Means聚类算法:基于距离的点云聚类(单木分割)附Python代码
    ​ 1K-Means算法介绍        K-means聚类算法是一种无监督学习算法,主要用于数据聚类。该算法的主要目标是找到一个数据点的划分,使得每个数据点与其所在簇的质心(即该簇所有数据点的均值)之间的平方距离之和最小。        在K-means聚类算法中,首先需要预定义簇......
  • Python random模块(获取随机数)常用方法和使用例子
    random.randomrandom.random()用于生成一个0到1的随机符点数:0<=n<1.0random.uniformrandom.uniform(a,b),用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一个是下限。如果a>b,则生成的随机数n:a<=n<=b。如果a<b,则b<=n<=a代码如下:print(ra......
  • Python中__init_subclass__特殊方法
    __init_subclass__是Python3.6引入的一个特殊方法,用于在子类被定义时执行一些操作。这个方法允许你在父类中定义一个类方法,当子类继承父类时会自动调用这个方法,你可以在其中进行一些初始化工作。以下是关于__init_subclass__方法的一些重要点:目的:__init_subclass__方......
  • python生成器generator的用法
    通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。所以,如果列表元素可以按照某种算法推算出来,那我们是否......
  • python中的泛型使用TypeVar
    1.引入为什么需要TypeVarPEP484的作者希望借助typing模块引入类型提示,不改动语言的其它部分。通过精巧的元编程技术,让类支持[]运算不成问题。但是方括号内的T变量必须在某处定义,否则要大范围改动python解释器才能让泛型支持特殊的[]表示法。鉴于此,我们增加了typing.TypeVar构造......
  • python 四数之和 多种解法
    方法一:暴力枚举暴力枚举方法比较容易想到,就是将四个数的组合进行遍历,找到符合要求的组合。代码如下:deffourSum(nums,target):length=len(nums)nums.sort()result=[]foriinrange(length-3):forjinrange(i+1,length-2):......