我有一个功能,可以在文件的内容中添加日期' completed.txt'每次我打电话给它并提供日期。功能如下:
def completed(date):
try:
os.chdir(libspath)
os.system("touch completed.txt")
fileobject=open('completed.txt',"r+")
fileobject.write(date+' \n')
fileobject.close()
except:
print "record.completed(): Could not write contents to completed.txt"
其中libspath是文本文件的路径。现在,当我打电话给它completed('2000.02.16')
时,它会将日期写入completed.txt文件。当我尝试添加另一个日期时,请说completed('2000.03.18')
然后它会覆盖之前的日期并且仅覆盖2000.03.18'现在在文本文件中,但我希望文件中的两个日期都可用作记录
答案 0 :(得分:0)
您必须以追加模式打开文件:
fileobject = open('completed.txt', 'a')
"在处理文件对象时,最好使用with关键字。这样做的好处是,即使在路上引发异常,文件也会在套件完成后正确关闭。它也比编写等效的try-finally块短得多。"
with open('completed.txt', 'a') as fileobject:
fileobject.write(date + ' \n')
答案 1 :(得分:0)
fileobject=open('completed.txt',"a")
^^
以append
模式打开。你应该使用
with open("completed.txt", "a") as myfile:
myfile.write(date+' \n')