我做了一个函数来将对象写入文件:
def StoreToFile(Thefile,objekt):
utfil=None
utfil=open(Thefile,'wb')
pickle.dump(objekt,utfil)
return True
if utfil is not None:
utfil.close()
以及使用此函数的代码:
^{pr2}$这就像一个符咒,但是我怎样才能把对象放回一个列表对象呢?在
我有提取对象的代码,但是我不知道如何遍历这些对象以将它们放入一个新的列表中。 到目前为止,我有这个:
def ReadFromFile(filename):
infile=None
infile=open(filename,'rb')
objekt=pickle.load(infile)
您的代码很傻,
utfil = None
业务没有意义,因为open(...)
可能失败的唯一方法是出现异常,在这种情况下,函数的其余部分无论如何都不会执行。正确的方法是使用上下文管理器:即with
语句。在相反,请执行以下操作:
如果你的意思是“运行而不出错”,那么是的,它确实“工作”。此代码重复重写文件,因此它只包含列表中的最后一项。在
改用这个:
^{pr2}$您的
ReadFromFile()
函数应该可以正常工作,并返回一个列表(假设上面的修复)。在也不知道这是做什么的:
你应该把整张单子都腌一下。在
相关问题 更多 >
编程相关推荐