Selamlar değerli üstatlar, metin belgesinde silme işlemi yapıyorum ancak son satırdaki elemanın bazı karakterleri tekrar yazdırılıyor bunun nedeni ne olabilir ?
Mesela son satırdan kastım şöyle bir metin belgemiz var ;,
Ben bu yukarıdaki listenin 2. elemanına işlem yapmak istiyorum, fakat aşağıdaki işlemi yaptığım zaman sondaki elemanın bazı karakterleri yazdırılıyor. Bunun nedeni nedir?
Kodlarım ;
with open("C:\\Users\\bilgi\Desktop\\Python Denemeleri\\Dosyam.txt", "r+", encoding="utf-8") as oku:
silinecekVeri = oku.readlines()
silinecekVeri.pop(1)
oku.seek(0)
oku.writelines(silinecekVeri)
oku.close()
writelines veya write kullanınca dosyanın içeriği silinmiyor. Dosyanın truncate metodu olması lazım. Onu kullanarak dosyanın boyutunu sıfır yapıp, yani içindekileri tamamen silip daha sonra yazma işlemini yapabilirsiniz.
Ekrem hocam, ben o konulara gelmediğim için şimdilik bildiğim yöntemden ilerledim, ve dosyayı tekrar oluşturup, güncel veriyi yazdırma kararı aldım. Şimdilik sonuca ulaştırdı beni. Yani ;
with open("C:\\Users\\bilgi\Desktop\\Python Denemeleri\\Dosyam.txt", "r+", encoding="utf-8") as oku:
silinecekVeri = oku.readlines()
silinecekVeri.pop(1)
print(silinecekVeri)
with open("C:\\Users\\bilgi\Desktop\\Python Denemeleri\\Dosyam.txt", "w", encoding="utf-8") as yaz:
yaz.writelines(silinecekVeri)
yaz.close()
oku.close()