完美解决python遍历删除字典里值为空的元素报错问题


Posted in Python onSeptember 11, 2016

exam = { 'math': '95', 'eng': '96', 'chn': '90', 'phy': '', 'chem': '' }

使用下列遍历的方法删除:

1. for e in exam:
2. if exam[e] == '':
3. del exam[e]

结果出现下列错误,怎么解决:

Traceback (most recent call last):
 File "Untitled.py", line 3, in <module>
  for e in exam:
RuntimeError: dictionary changed size during iteration

正确做法:

1. s = {"1":a,"2":b,"3":c,"4":d,"5":e}
2. s_key = list(s.keys())
3. for k_s in s_key:

4.#比如我要删除第四个元素

5.del s["4"]

只是在for循环中,相当于对链表的操作,它会自动调用next方法!

字典的迭代器会遍历它的键,在这个过程中,不能改变这个字典!不能删除、添加数据

要先记录要删除的元素的索引,遍历完后再删除,exam.keys()返回的是一个独立的列表

以上这篇完美解决python遍历删除字典里值为空的元素报错问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中尝试多线程编程的一个简明例子
Apr 07 Python
python妹子图简单爬虫实例
Jul 07 Python
python format 格式化输出方法
Jul 16 Python
Django项目中添加ldap登陆认证功能的实现
Apr 04 Python
Django使用Jinja2模板引擎的示例代码
Aug 09 Python
python实现高斯(Gauss)迭代法的例子
Nov 20 Python
python序列化与数据持久化实例详解
Dec 20 Python
pycharm不能运行.py文件的解决方法
Feb 12 Python
keras实现VGG16 CIFAR10数据集方式
Jul 07 Python
获取python运行输出的数据并解析存为dataFrame实例
Jul 07 Python
Python连接mysql方法及常用参数
Sep 01 Python
浅谈Python数学建模之数据导入
Jun 23 Python
python 循环遍历字典元素的简单方法
Sep 11 #Python
遍历python字典几种方法总结(推荐)
Sep 11 #Python
python遍历 truple list dictionary的几种方法总结
Sep 11 #Python
浅谈python中的变量默认是什么类型
Sep 11 #Python
python中常用的九种预处理方法分享
Sep 11 #Python
python 打印出所有的对象/模块的属性(实例代码)
Sep 11 #Python
python 打印对象的所有属性值的方法
Sep 11 #Python
You might like
PHP 抓取新浪读书频道的小说并生成txt电子书的代码
2009/12/18 PHP
php定时计划任务与fsockopen持续进程实例
2014/05/23 PHP
PHP实现对站点内容外部链接的过滤方法
2014/09/10 PHP
PHP观察者模式实例分析【对比JS观察者模式】
2019/05/22 PHP
asp.net和asp下ACCESS的参数化查询
2008/06/11 Javascript
仅IE9/10同时支持script元素的onload和onreadystatechange事件分析
2011/04/27 Javascript
JS 获取浏览器和屏幕宽高等信息的实现思路及代码
2013/07/31 Javascript
bootstrap基础知识学习笔记
2016/11/02 Javascript
基于BootstrapValidator的Form表单验证(24)
2016/12/12 Javascript
JavaScript中匿名函数的递归调用
2017/01/22 Javascript
Angular 4.x中表单Reactive Forms详解
2017/04/25 Javascript
vue.js 微信支付前端代码分享
2018/02/10 Javascript
JavaScript页面倒计时功能完整示例
2019/05/15 Javascript
express + jwt + postMan验证实现持久化登录
2019/06/05 Javascript
jQuery实现中奖播报功能(让文本滚动起来) 简单设置数值即可
2020/03/20 jQuery
浅谈JavaScript中this的指向问题
2020/07/28 Javascript
[03:37]2016完美“圣”典 风云人物:Mikasa专访
2016/12/07 DOTA
python的Tqdm模块的使用
2018/01/10 Python
浅谈Python黑帽子取代netcat
2018/02/10 Python
图文详解python安装Scrapy框架步骤
2019/05/20 Python
基于Python2、Python3中reload()的不同用法介绍
2019/08/12 Python
python安装gdal的两种方法
2019/10/29 Python
新建文件时Pycharm中自动设置头部模板信息的方法
2020/04/17 Python
Python猫眼电影最近上映的电影票房信息
2020/09/18 Python
pycharm 2020.2.4 pip install Flask 报错 Error:Non-zero exit code的问题
2020/12/04 Python
魅力教师事迹材料
2014/01/10 职场文书
开业典礼主持词
2014/03/21 职场文书
企业厂务公开实施方案
2014/03/26 职场文书
企业安全生产责任书
2014/04/14 职场文书
人事任命书怎么写
2014/06/05 职场文书
反腐倡廉剖析材料
2014/09/30 职场文书
银行党员批评与自我批评
2014/10/15 职场文书
2015年学校教务处工作总结
2015/05/11 职场文书
2015小学五年级班主任工作总结
2015/05/21 职场文书
病假证明模板
2015/06/19 职场文书
使用JS前端技术实现静态图片局部流动效果
2022/08/05 Javascript