我正在写一个函数,它接受字典输入并返回在该字典中具有唯一值的键的列表。考虑,keyerror 1在我的代码
ip = {1: 1, 2: 1, 3: 3}
因此,输出应该是[3],因为关键字3具有唯一的值,这是不存在的字典。
现在有问题给出功用:
像def uniqueValues(aDict):
dicta = aDict
dum = 0
for key in aDict.keys():
for key1 in aDict.keys():
if key == key1:
dum = 0
else:
if aDict[key] == aDict[key1]:
if key in dicta:
dicta.pop(key)
if key1 in dicta:
dicta.pop(key1)
listop = dicta.keys()
print listop
return listop
我得到错误:
File "main.py", line 14, in uniqueValues if aDict[key] == aDict[key1]: KeyError: 1
我哪里做错了吗?
要修改你的字典('dicta.pop(键)'),同时通过它迭代导致意想不到的结果。 – Delgan