我是一名GCSE学生,并且设置了一个问题,需要我保存学生名称和测试分数以供日后检索和操作。我想从一个pickled dat文件加载一本字典,但问题是,我第一次尝试加载它时,pickle字典不存在
我已经决定将数据存储在字典中,我将根据需要腌制和检索。我知道如何腌制字典并检索以前腌制的字典。
我只有在第一次运行程序时出现问题,因为dat文件尚未创建。
下面的代码打开现有的Dat文件,并将最新的学生名称和分数写入文件中保存的字典。
f = open("class1.dat","ab+")
class1 = pickle.load(f)
class1[Name]=Score
pickle.dump(class1,f)
f.close
的问题是,这个工程一旦第一比分一直保存到DAT文件,但我得到这个错误信息第一次运行该程序。
Traceback (most recent call last):
File "C:\Python34\Latest_Version.py", line 61, in <module>
class1 = pickle.load(f)
EOFError: Ran out of input
我意识到这是因为dat文件还不存在。
什么代码会检查Dat文件是否先存在?
如果你能帮忙,请保持简单,因为我的知识是有限的。
先运行'f.seek(0)'。 – zondo