titel - python plot title



So fügen Sie mit Python Zeilen zu vorhandenen Dateien hinzu (4)

Öffnen Sie die Datei für "Anfügen" anstatt "Schreiben".

with open('file.txt', 'a') as file:
    file.write('input')

https://ffff65535.com

Ich habe bereits eine TXT-Datei mit Python mit ein paar Textzeilen erstellt, die von einem einfachen Programm gelesen werden. Ich habe jedoch Probleme, die Datei erneut zu öffnen und zusätzliche Zeilen in die Datei in einem späteren Teil des Programms zu schreiben. (Die Zeilen werden aus später eingegebenen Benutzereingaben geschrieben.)

with open('file.txt', 'w') as file:
    file.write('input')

Dies setzt voraus, dass 'file.txt' zuvor geöffnet und geschrieben wurde. Beim zweiten Öffnen dieses Befehls muss ich jedoch mit dem Code, den ich derzeit habe, alles löschen, was zuvor geschrieben wurde, und die neue Zeile neu schreiben. Gibt es eine Möglichkeit, dies zu verhindern (und möglicherweise den übermäßigen Code zum erneuten Öffnen der Datei zu reduzieren)?


Die obigen Antworten sind korrekt. Wenn Sie die Daten jedoch als neue Zeile anfügen möchten, anstatt sie am Ende der letzten Zeile der Datei anzuheften, verwenden Sie Folgendes:

with open('file.txt', 'a') as file:
    file.writelines('input')

Wenn Sie an die Datei anhängen möchten, öffnen Sie sie mit 'a' . Wenn Sie die Datei nach dem Ort suchen möchten, an dem Sie die Zeile einfügen möchten, verwenden Sie 'r+' . ( docs )


Wenn Sie mit "a" öffnen, befindet sich die Schreibposition immer am Ende der Datei (ein Anhang). Es gibt andere Permutationen des Modusarguments zum Aktualisieren (+), Abschneiden (w) und Binärmodus (b), aber nur mit "a" zu beginnen, ist Ihre beste. Wenn Sie die Datei nach dem Ort suchen möchten, an dem Sie die Zeile einfügen möchten, verwenden Sie 'r +'.

Der folgende Code hängt einen Text in der vorhandenen Datei an:

with open("file.txt", "a") as myfile:
    myfile.write("text appended")




file