Yazan : Şadi Evren ŞEKER

Bu yazının amacı, python dilinde kullanılan dosya işlemlerini anlatmak ve basit örnekler ile temel dosya işlemlerini göstermektir.

Python programlama ortamının kurulumu ve bu dilde yapılabilecek temel bazı işlemler için python ile programlama başlıklı yazıya bakabilirsiniz.

Dosyaların açılması

Python dilinde dosya işlemlerini gerçekleştirebilmek için öncelikle dosyaların açılması gerekir.

Dosya açmak için open() fonksiyonu(function) kullanılır. Bu fonksiyonun kullanımı sırasında iki parametre verilir ve bunlar sırasıyla dosya ismi ve açılma şeklidir:

open(“dosyaismi”,”şekil”)

örneğin aşağıdaki satır python dilinde “sadi.txt” dosyasını okumak için açar:

f = open(‘sadi.txt’,’r’)

Burada dosya işlemleri için iki temel şekil olan okuma : r ve yazma : w söylenebilir.

Örneğin içeriği aşağıdaki şekilde verilmiş bir girdi.txt dosyasını ele alalım:

Bu dosyayı python ile açıp okumak için aşağıdaki komutları sırasıyla vermek gerekir:

Görüldüğü üzere dosya açılmış ve dosyadaki bilgi okunmuştur. Buradaki çıktı ekrana basılırken n değeri ile alt satıra geçildiğini gösteren (new line) sembolleri her satır arasında basılmıştır.

Yukarıda kullanılan read() fonksiyonu ayrıca parametre olarak bir tam sayı da alabilir. Bu durumda dosyadan ne kadar karakterin okunacağı belirtilmiş olur:

Görüldüğü üzere dosyanın içeriği açılmış ve 10 karakter okunarak ekrana basılmıştır.

Benzer şekilde dosyadaki bütün karakterleri arka arkaya basmak yerine satır satır okuyan fonksiyon ise readline() fonksiyonudur.

Görüldüğü üzere her readline() fonksiyonu çağrılmasının ardından, dosyadan yeni bir satır okunarak ekrana basılmıştır.

readlines() fonksiyonu ise, dosya göstericisinin kaldığı noktadan itibaren kalan satırları bir listeye okur. Örneğin yukarıdaki çalışmanın ardından f.readlines() yazılırsa, dosya göstericisinde kalınan en son noktadan, dosya sonuna kadar olan bütün satırlar, her biri ayrı bir eleman olmak üzere bir diziye yerleştirilir:

Dosyaya yazılma işlemi sırasında ise write fonksiyonu kullanılır. Bu fonksiyonun kullanılması için dosyanın yazma şeklinde açılması gerekir:

Görüldüğü üzere dosya ‘w’ şeklinde yazılmak için açılmış. Dosyaya write fonksiyonu ile bilgiler yazılmış ve ardından okunmak için açılıp dosya okunmuştur.

Burada dikkat edilecek bir husus, dosyaya yazılan bilgilerin önce dizgiye (string) çevrilmesidir. Örneğin yazılan sayıların önce str() fonksiyonu ile dizgiye (string) çevrilmesi gerekir. Şayet bu çevirim yapılmazsa aşağıdaki şekilde bir hata mesajı alınır:

Dosya yazma işleminin bitirilmesinin ardından, dosyanın kapatılması gerekir. Bir dosya kapatılmazsa dosyadaki verilerin gerçekten diske yazıldığı garanti edilemez. Bu işlem için close fonksiyonu kullanılır ve örneğin

f.close()

şeklinde dosya kapatılır.

Python dilinde dosya için kullanılan diğer bir şekil ise ilave şeklidir (append mode) ve dosyadaki mevcut bilgileri silmeden yazılan yeni bilgileri dosyanın sonuna ilave eder.

Örneğin yukarıdaki örnek kodda, yeni.txt isimli bir dosya önce yazma şeklinde açılmış ardından içerisine bir bilgi yazılıp (‘ilk satır’) dosya kapatılmış ve içindekiler okuma şeklinde açılarak ekrana yazılmıştır.

Bu haliyle dosyanın içindeki bilgileri silmeden sonuna ilave yapmak için dosya bu defa ekleme şeklinde açılarak bir satır daha eklenmiş ve ardından okunduğunda dosyada iki satırında olduğu görülmüştür.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir