文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python中删除字典中键值对的方法

2023-09-06 10:04

关注

方法一:dic.pop('key', 默认值)

## pop移除的键存在时,返回键对应的值dic = {'1':'node1','2':'node2'}print(dic.pop('1', None)) # node1print(dic) # {'2': 'node2'}## pop移除的键不存在,则返回默认值dic = {'1':'node1','2':'node2'}print(dic.pop('3', None)) # Noneprint(dic) # {'1': 'node1', '2': 'node2'}

字典的pop方法可以将字典键所对应的值给删除掉,但因为字典中键和值是映射关系,该键所对应的值被删除了,则该键也会从字典中移除。

pop方法会返回被移除键对应的值。

若pop方法想移除的键不存在,则返回默认值。

方法二:使用Python关键字del移除字典中的键值对

## 必须保证要移除的键存在dic = {'1':'node1','2':'node2'}del dic['1']print(dic) # {'2': 'node2'}## 若移除的键存在,则会报异常KeyErrordic = {'1':'node1','2':'node2'}del dic['3'] # 报异常KeyError: '3'print(dic)

del关键字只有一个作用,就是将一个对象从内存中彻底地删除掉。

由于字典的键与值映射关系,彻底地从内存中删除值 del dic['key'],意味着值所对应的键也将被移除。

由于当字典中不存在指定的键时,dic['key']会报异常KeyError,所以必须保证要移除的键在字典中是存在的。

 方法三:使用dic.clear()方法

dic = {'1':'node1','2':'node2'}dic.clear()print(dic) # {}

dic.clear()方法会将dic字典中的所有键值对都移除掉,最后得到一个空字典。 

删除字典中多个键值对的方法: 

1、使用for循环遍历要删除的键

dic = {'3': 'node3', '4': 'node4', '5': 'node5', '1': 'node1', '2': 'node2'}l = ['1', '3', '5']for k in l:  dic.pop(k, None)print(dic) # {'4': 'node4', '2': 'node2'}## 键不存在也可使用dic = {'3': 'node3', '4': 'node4', '5': 'node5', '1': 'node1', '2': 'node2'}l = ['1', '3', '5', '7']for k in l:  dic.pop(k, None)print(dic) # {'4': 'node4', '2': 'node2'}

 2、使用map函数

## 要删除的键不存在时返回Nonedic = {'3': 'node3', '4': 'node4', '5': 'node5', '1': 'node1', '2': 'node2'}arr = ['1', '3', '5', '7']res = map(dic.pop, arr)

来源地址:https://blog.csdn.net/m0_46829545/article/details/128578443

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     801人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     348人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     311人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     432人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     220人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯