python错误之RuntimeError: dictionary changed size during iteration

pythonn报错信息:
C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\python.exe C:/Users/Administrator/PycharmProjects/pythondemo/maptest.py
Traceback (most recent call last):
File "C:/Users/Administrator/PycharmProjects/pythondemo/maptest.py", line 5, in <module>
for line in maps.keys():
RuntimeError: dictionary changed size during iteration

python2中实现遍历的同时删除字典中的元素;python3中运行报错信息:
C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\python.exe C:/Users/Administrator/PycharmProjects/pythondemo/maptest.py
Traceback (most recent call last):
  File "C:/Users/Administrator/PycharmProjects/pythondemo/maptest.py", line 5, in <module>
    for line in maps.keys():
RuntimeError: dictionary changed size during iteration
# maps = {1:"李明",2:"丹尼"}
# for line in maps.keys():
#     if(line == 2):
#         maps.pop(line)
# print(maps)

  

python3中实现遍历的同时删除字典中的元素
maps = {1:"李明",2:"丹尼"}
for line in list(maps.keys()):
    if(line == 2):
        maps.pop(line)
print(maps)

  

posted @ 2017-12-13 19:05  漂渡  阅读(11132)  评论(0编辑  收藏  举报