【发布时间】:2013-07-11 15:18:42
【问题描述】:
在我的代码中,我遍历字典中的键,如果键与条件匹配(存在于另一个列表中),则删除键值对:
for key in my_dict:
if key in my_list:
del my_dict[key]
问题是,当我运行代码时出现错误:'字典在迭代期间更改了大小'。 我意识到我不能这样做:
for i in range(len(my_dict)):...
因为我的字典中的关键索引会随着每次删除而改变。
有没有办法在不引发错误的情况下删除字典中的元素?
【问题讨论】:
-
如果可能的话,提供一个公平的样本会很棒。它节省了另一端的时间,并且在大多数情况下可以提前响应。
标签: python dictionary key