2015-11-29 46 views
-1

我需要幫助如何使我的文本文件,以便輸入另一次信息時我運行我的程序爲新信息創建一個新的文本文件。如何寫入一個新的文本文件而不是舊的

myfile = open('Entered_Driver.txt','a') 
myfile.write(" Name: {0}\n Surname: {1}\n Street Address:{2}\n Car Number Plate:{3}\n".format(Name, Surname, Address, Car_Reg_Number)) 
myfile.close() 
+1

你真的嘗試閱讀文檔https://docs.python.org/2/tutorial/inputoutput.html#reading-and-writing-files –

回答

3

您正在以追加模式('a')打開文件。如果您想要創建一個新文件,則應該使用寫入模式('w'),併爲該文件使用另一個名稱,這樣您的上一個文件就不會被刪除。要創建一個不同的文件,您可以根據您的數據修改其名稱,例如命名它Entered_Driver_xxxx其中xxxx是車牌號碼。

這裏有你想要的東西:

myfile = open('Entered_Driver_' + Car_Reg_Number + '.txt','w') 
myfile.write(" Name: {0}\n Surname: {1}\n Street Address:{2}\n Car Number Plate:{3}\n".format(Name, Surname, Address, Car_Reg_Number)) 
myfile.close() 

欲瞭解更多信息,open()看到official documentation page

+0

但現在當我寫入我的文件,第二次全部我輸入的數據仍然存在,但我第一次輸入的所有數據都消失 –

+0

@ParthShah我編輯了我的答案,看看這是你想要的。 –

+0

非常感謝很長時間試圖找到答案 –

0

myfile=open('Entered_Driver.txt','a')表示追加到當前文件。

你想使用'w'而不是'a'創建一個新的文件,像這樣:

myfile=open('Entered_Driver.txt') 
newfile=open('Name_here.txt', 'w') 
newfile.write(" Name: {0}\n Surname: {1}\n Street Address:{2}\n Car Number Plate:{3}\n".format(Name, Surname, Address, Car_Reg_Number)) 
newfile.close() 
myfile.close() 

上述打開原始文本文件,並使用'w'它創建/覆蓋名爲'Name_Here.txt'文件。之後,您只需將文本寫入文件中,儘管爲了縮短代碼將文本存儲在列表中會更好。

+0

但是現在,當我寫入我的文件時,第二次輸入的所有數據都保留,但第一次輸入的所有數據都是瓦特 –

相關問題