我可以使用.write()写入文本文件。但在我关闭()文件并再次打开之后,所有写入的数据都消失了......?有什么办法可以将这些数据永久保存在文件中吗?
def writeToFile():
myFile = open("myText.txt","w")
for each in range(8,10):
record = "This is record number {} in the file\n".format(each)
myFile.write(record)
myFile.close()
writeToFile()
所以我的意思是我第一次运行这个程序时它附加到文件中。在此之后,当我关闭程序并再次运行它时,我希望它再次写入文件,但它只会覆盖它,即每次关闭程序时删除早期数据。
答案 0 :(得分:0)
您要编写的数据确实是永久写入的......直到您再次打开覆盖以前的数据为止。
您可以使用不同的模式打开文件。
如果您知道该文件包含重要数据并且只想读取它,请使用此模式。
file = open('./path_to_file', 'r')
如果要覆盖数据,请改为使用此数据:
file = open('./path_to_file', 'w')
或者,您可以使用其他方式,它将为您关闭文件。
with open('./path_to_file', 'r') as read_file:
for line in read_file:
print line
这将打开文件,逐行将其写在屏幕上并在最后为您关闭。
最后,如果您需要再次打开它并在文件的末尾附加新内容,请使用:
file = open('./path_to_file', 'a')