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:

HTML Kodu

f = open("okubeni.txt")
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")