Hallo,
ich habe folgenden Code, der sich in einer for-Schleife befindet.
dskt=open(rf"{os.environ['USERPROFILE']}\test.txt", "r+")
a=dskt.read().split("\n").pop(0)
print(a)
output="\n".join(a)
print(output)
dskt.write(output)
dskt.close()
In der Datei test.txt stehen Dateipfade (einer pro Zeile). Das Programm soll bei jedem Schleifendurchlauf die erste Zeile der Datei entfernen und die veränderten Daten (also ohne die erste Zeile) danach wieder in die Datei zurückschreiben, was aber nicht funktioniert. Stattdessen ist die Datei direkt schon beim ersten Durchlauf komplett leer. Bei der ersten print-Anweisung wird mir keine Liste ausgegeben, sondern der Pfad als String. Bei der zweiten werden alle Buchstaben einzeln untereinander ausgegeben.
Ich habe die Vermutung, dass das Programm nicht nur nach Zeilenumbrüchen trennt, sondern auch, wenn ein Pfad in der Datei "\n" enthält (z.B. test\neuer_ordner).
Könnte mir jemand sagen, was ich falsch gemacht habe?