我正在寫一個函數,它接受字典輸入並返回在該字典中具有唯一值的鍵的列表。考慮,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