【发布时间】:2018-12-12 23:54:54
【问题描述】:
我是 python 的初学者。还在学习基础。我尝试了下面的代码,它给了我预期的结果。
result_f=open("results.txt")
scores={}
for line in result_f:
(name, score)=line.split()
scores[score]=name
result_f.close()
for each in sorted(scores.keys(), reverse=True):
print(each+' '+scores[each])
但是如果我使用
scores.values()
而不是
scores.keys()
它会给我这样的错误
" Traceback(最近一次调用最后一次):
文件“E:\Practise for MYSELF\Python\TEST.py”,第 8 行,在
打印(每个+' '+scores[每个])
KeyError: 'Zack' "
“result.txt”文件的内容是
约翰尼 8.65
胡安 9.12
约瑟夫 8.45
斯泰西 7.81
艾迪恩 8.05
扎克 7.21
亚伦 8.31
请解释一下,为什么会出现这个错误以及如何解决它?
【问题讨论】:
标签: python