Python

Python Dosya İşlemleri (File Handling)

Python dosya işlemleri, dosya oluşturmak, okumak, güncellemek ve silmek şeklinde özetlenebilir. Dosya işlemleri özellikle web uygulamaları için oldukça önemlidir.

Python Dosya İşlemleri

Pek çok programlama dili için dosya işleme oldukça önemlidir ve benzer şekilde Python da dosyaları oluşturmak, okumak, güncellemek ve silmek için çeşitli işlevlere sahiptir. Bu işlevlerin her biri alt başlıklar halinde derlenmiştir:

Python Dosya Açma

Python’da dosya açmak için İngilizcede açmak anlamına gelen open() fonksiyonu kullanılır. Bu fonksiyon ile kullanılan iki parametre vardır:

  1. dosya adı
  2. dosya modu

Bir dosyayı açmak için ise dört farklı mode yani yöntem vardır. Bunlar sırasıyla aşağıdaki gibidir:

  1. r” –> ReadOkuma, varsayılan değerdir, dosyayı okumak için açar. (Dosya yoksa hata verir.)
  2. a” –> AppendEkleme, dosyayı veri eklemek için açar (dosya yoksa yeni bir tane oluşturur.)
  3. w” –> WriteYazma dosyayı yazmak için açar (dosya yoksa yeni bir tane oluşturur.)
  4. x” –> Create Oluşturma (zaten bir dosya varsa hata verir.)

Ek olarak, dosyanın binary (İkili) mod mu yoksa metin (text) modu olarak mı işleneceğini belirtmeye yarayan anahtarlar bulunur:

  1. “t” – Metin (varsayılan değerdir.)
  2. “b” – Binary Binary mod (resim gibi dosyaları ikili açmak gerekebilir.)

Aşağıdak open() fonksiyonun kullanımı gösterilmiştir:

Dosya okuması için “r” ve metin için “t” default yani varsayılan değerler olduğundan, bunları belirtmeye gerek yoktur. Bu yüzden yukarıdaki kod file1 = open(“beniOku.txt”, “rt”) ile aynıdır. Ancak dosyanın var olduğundan emin olunmalı aksi takdirde hata alınır.

Python Dosya Okuma

Açılacak dosyanın yazılacak uygulama ile aynı dizinde olduğundan emin olduktan sonra bir dosya oluşturalım. İçine de loremipsum olarak bilinen taklit yazı bloğundan 25 kelimeyi ekleyelim:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin sollicitudin mattis pulvinar. Donec eu arcu ultrices, hendrerit eros vel, malesuada orci. Proin gravida dolor turpis.

Ardından da dosyamızı “beniOku.txt” olarak kaydedelim. Ardından da dosyayı açmak için open () fonksiyonunu kullanalım:

Eğer ki dosya farklı bir dizinde ise dosyan yolunun belirtilmesi gerekecektir:

Python’da Dosyanın Sadece Bir Bölümünü Okuma

Python’da read () yöntemi varsayılan olarak tüm metni döndürmektedir. Ancak belirtilen miktardaki karakter sayısı da döndürülebilir.

Aşağıdaki program beniOku dosyasından 10 karakter döndürülecek şekilde yazılmıştır.

Python’da Dosyayı Satır Satır Okuma

Python’da dosyadan bir satır okutabilmek için İngilizcede okuma satırı anlamına gelen readline () fonksiyonu kullanılır:

Eğer ki dosyanın satır satır okunmasını isteniyorsa readline () fonksiyonu birden fazla kullanabilir. Aşağıdaki örnekte readline() fonksiyonu üç kez çağrılarak ilk üç satırın okunması sağlanmıştır:

Pekala uzun dosyanın sonuna kadar satır satır okunması istenilebilir. Böylesi bir durumda tüm satırları tek tek okumak kolay olmayacağından for döngüsünden yararlanılır:

Python’da Dosyayı Kapatma

İyi bir uygulama gerekliliği olarak eğer dosya ile işimiz bittiyse kapatmalıyız. Dosyayı kapatmak için close () fonksiyonu kullanılır:

Python Dosyaya Yazma

Mevcut bir dosyaya yazmak yani yeni veriler eklemek için open () fonksiyonuna aşağıdaki parametrelerden biri eklenmelidir:

  • “a” –> ekle (append) dosyanın sonuna ekler
  • “w” –> yaz (write) mevcut içeriğin üzerine yazar.

İlk olarak “a” ile dosyayı açıp içerik ekleyelim:

Ve son olarak da “w” ile dosyayı açıp içeriğin üzerine yazalım:

Python Yeni Dosya Oluşturma

Aşağıdaki parametrelerden biri open () fonksiyonunu kullanarak yeni bir dosya oluşturulabilir:

  • “x” –> create – oluştur, bir dosya oluşturur. (eğer dosya varsa bir hata döndürür)
  • “a” –> append – ekle, belirtilen dosya yoksa bir dosya oluşturur.
  • “w” –> write – yaz, belirtilen dosya yoksa bir dosya oluşturur.

Aşağıdaki kod satırı ile yeni boş bir dosya oluşturuldu:

Eğer bu dosya mevcut değilse yeni bir dosya oluşturmak için:

Python Dosyaları Silme

os modülünü içe aktararak os.remove(“dosya adı”) fonksiyonunu kullanabilir ve böylece dosyayı silebiliriz:

Eğer dosya yoksa hata alınır bu yüzden hata almamak için if-else kullanabiliriz:

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu

😔 Reklam Engelleyicisi 😔

Sitenin varlığını sürdürebilmesi adına reklam engelleyicinizi (Adblocker) kapatmanızı rica ediyoruz 😔