Python Dosya İşlemleri
Dosya işlemleri, web uygulamaları için önemlidir. Python dosyaların oluşturulması, okunması, güncellenmesi ve silinmesi ile ilgili çeşitli fonksiyonlara sahiptir.
Dosyayı Açmak
Python'da dosya açmak için
open() fonksiyonunu kullanırız. Bu fonksiyonun iki parametresi vardır. Biri
dosya adı, diğeri ise
dosya modudur.
Dört farklı dosya modu vardır. Bunlar;
- "r" - Okuma, varsayılan değerdir, dosyayı okumak için açar. Dosya yoksa hata verir.
- "a" - Ekleme, dosyayı veri eklemek için açar, dosya yoksa yeni bir tane oluşturur.
- "w" - Yazma, dosyayı yazmak için açar, dosya yoksa yeni bir tane oluşturur.
- "x" - Oluşturma, zaten bir dosya varsa hata verir.
Ayrıca dosyayı metin ya da ikili değerde açmaya yarayan anahtarlar da bulunur.
- "t" - Yazı (text), varsayılan değerdir.
- "b" - İkili (binary), resim gibi dosyaları ikili açmak gerekebilir.
open() fonksiyonu aşağıdaki şekilde kullanılır:
Yukarıdaki kod ile
f = open("demofile.txt", "rt") aynıdır. Herhangi bir parametre belirtilmezse dosya okuma ve yazı modunda açılır.
Dosyayı Okuma Modunda Açmak
Açacağımız dosyanın uygulama ile aynı dizinde olduğundan emin olmalıyız. Bir dosya oluşturun ve içine bir şeyler yazın. Dosyayı "okubeni.txt" olarak kaydedin.
HTML Kodu
f = open("okubeni.txt", "r")
print(f.read())
Eğer dosya farklı bir dizindeyse, dosyanın yolunu uzunca yazın:
HTML Kodu
f = open("D:\\Belgeler\okubeni.txt", "r")
print(f.read())
Dosyanın belli bir karakterini yazdırmak için
read() fonksiyonunda <karakter sayısı> parametresini kullanabiliriz.
HTML Kodu
f = open("okubeni.txt", "r")
print(f.read(5))
Dosyadan bir satır okutmak için
readline() fonksiyonu kullanılabilir.
HTML Kodu
f = open("okubeni.txt", "r")
print(f.readline())
Satır satır okunmasını istiyorsak bu fonksiyonu birden fazla kullanabiliriz.
HTML Kodu
f = open("okubeni.txt", "r")
print(f.readline())
print(f.readline())
Dosyanın sonuna kadar satır satır okumasını istiyorsak
for döngüsünü kullanabiliriz.
HTML Kodu
f = open("okubeni.txt", "r")
for x in f:
print(x)
Dosyayı Kapatmak
Dosya ile işimiz bittiyse
close() fonksiyonu ile kapatmalıyız.
HTML Kodu
f = open("okubeni.txt", "r")
print(f.readline())
f.close()
Dosyaya Veri Eklemek
Dosyayı
"a" (append) modunda açarak dosyanın içindeki veriler korunarak satır sonundan itibaren dosyaya yeni veriler eklenmesini sağlayabiliriz.
HTML Kodu
f = open("okubeni.txt", "a")
f.write("Artık dosyada daha çok veri var!")
f.close()
Dosyanın Üzerine Yazmak
Eğer dosya
"w" (write) modunda açılır ve yazı eklenirse önceki veriler silinir ve son eklenen verilerle dosya kaydedilir.
HTML Kodu
f = open("okubeni.txt", "w")
f.write("Hey, var olan içerik silindi!")
f.close()
Eğer amacımız dosyaya veri yazmak değilse, sadece o dosyanın fiziksel olarak oluşturulmasını istiyorsak dosyayı
"x" modunda açıp kapatmak yeterli olacaktır.
Dosyayı Silmek
os modülünü uygulamaya ekleyerek
os.remove("dosya adı") fonksiyonunu kullanabilir ve dosyayı silebiliriz.
HTML Kodu
import os
if os.path.exists("okubeni.txt"):
os.remove("okubeni.txt")
else:
print("Dosya bulunamadı")
Amacımız bir klasörü silmekse
os.rmdir() fonksiyonu kullanılabilir:
HTML Kodu
import os
os.rmdir("klasorum")