发布于 2016-10-22 19:13:25 | 239 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的Python3 Cookbook中文版,程序狗速度看过来!

Python编程语言

Python 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。


下面小编就为大家带来一篇完美解决python遍历删除字典里值为空的元素报错问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

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 遍历字典时删除元素报异常的问题
Python安装Imaging报错:The _imaging C module is not installed解决方法
python程序报错 IOError: decoder zip not available解决方法
Python安装第三方库报错:Python version 2.7 required, which was not found in the registry.解决方法
MySQL-python-1.2.4b4.win32-py2.7安装报错:python version 2.7 required,which was not found in the registry.解决方法
ubuntu上跑python连接pg,报错 ImportError: No module named psycopg2解决方法
Python 中 Ctrl+C 不能终止 Multiprocessing Pool 的解决方案
解决Python出现_warn_unsafe_extraction问题的方法
Python处理JSON时的值报错及编码报错的两则解决实录
Python首次安装后运行报错(0xc000007b)的解决方法
python中异常报错处理方法汇总
最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务