完美解决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安装第三方库的3种方法
Jun 21 Python
详解Python编程中包的概念与管理
Oct 16 Python
python编写分类决策树的代码
Dec 21 Python
PyCharm代码整体缩进,反向缩进的方法
Jun 25 Python
python 函数内部修改外部变量的方法
Dec 18 Python
Python 脚本获取ES 存储容量的实例
Dec 27 Python
Python将json文件写入ES数据库的方法
Apr 10 Python
pyqt5使用按钮进行界面的跳转方法
Jun 19 Python
使用Python代码实现Linux中的ls遍历目录命令的实例代码
Sep 07 Python
Django使用消息提示简单的弹出个对话框实例
Nov 15 Python
使用Python3 poplib模块删除服务器多天前的邮件实现代码
Apr 24 Python
Python基于pip实现离线打包过程详解
May 15 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
检测png图片是否完整的php代码
2010/09/06 PHP
PHP中curl_setopt函数用法实例分析
2015/04/16 PHP
基于PHP如何把汉字转化为拼音
2015/12/11 PHP
Windows2003下php5.4安装配置教程(Apache2.4)
2016/06/30 PHP
PHP文件操作实例总结
2016/09/27 PHP
Laravel如何同时连接多个数据库详解
2019/08/13 PHP
js版本A*寻路算法
2006/12/22 Javascript
实现超用户体验 table排序javascript实现代码
2009/06/22 Javascript
配置Grunt的Task时通配符支持和动态生成文件名问题
2015/09/06 Javascript
JavaScript实现打开链接页面的方式汇总
2016/06/02 Javascript
Bootstrap基本样式学习笔记之表格(2)
2016/12/07 Javascript
Vue.js 单页面多路由区域操作的实例详解
2017/07/17 Javascript
AngularJs+Bootstrap实现漂亮的计算器
2017/08/10 Javascript
微信小程序结合Storage实现搜索历史效果
2019/05/18 Javascript
简单学习5种处理Vue.js异常的方法
2019/06/17 Javascript
JQuery+Bootstrap 自定义全屏Loading插件的示例demo
2019/07/03 jQuery
Python中使用异常处理来判断运行的操作系统平台方法
2015/01/22 Python
pygame学习笔记(5):游戏精灵
2015/04/15 Python
详解python的webrtc库实现语音端点检测
2017/05/31 Python
解决Mac安装scrapy失败的问题
2018/06/13 Python
对python多线程中Lock()与RLock()锁详解
2019/01/11 Python
在python中利用opencv简单做图片比对的方法
2019/01/24 Python
Django 实现外键去除自动添加的后缀‘_id’
2019/11/15 Python
np.random.seed() 的使用详解
2020/01/14 Python
Python字符串三种格式化输出
2020/09/17 Python
html5使用html2canvas实现浏览器截图的示例
2017/08/31 HTML / CSS
豪华床上用品 :Jennifer Adams
2019/09/15 全球购物
RIP版本1跟版本2的区别
2013/12/30 面试题
房屋租赁合同协议书范本
2014/10/19 职场文书
小学教师2014年度工作总结
2014/12/03 职场文书
在职证明书模板
2015/06/15 职场文书
2016年教师节慰问信
2015/12/01 职场文书
环境保护宣传标语大全!
2019/06/28 职场文书
MySql新手入门的基本操作汇总
2021/05/13 MySQL
MySQL 中如何归档数据的实现方法
2022/03/16 SQL Server
Python字符串格式化方式
2022/04/07 Python