我有以下简单的python代码:
# Dictionary of strings and int
wordFreqDic = {
"Hanna": "blonde",
"Brad" : "brown" ,
"Peter" : "blonde",
"Jason" : "brown"
}
#If key exist in dictionary then delete it using del.
def answer():
for i in wordFreqDic:
if wordFreqDic[i]=="blonde":
print("ok")
else:
del wordFreqDic[i]
return wordFreqDic
我想删除值与“blonde”不同的键,但代码的问题是:
1)程序给出错误:
RuntimeError: dictionary changed size during iteration
2)程序将其删除,但只有一个键,即输出为:
{'Brad': 'brown', 'Peter': 'blonde', 'Hanna': 'blonde'}
,在本例中,程序只删除'Jason'
,但我还需要删除'Brad'
。你知道吗
你知道为什么我的代码不能正常工作吗? 谢谢你的帮助。你知道吗
您可以使用dict理解:
相关问题 更多 >
编程相关推荐