File Operations in Python, open()

Kategori: Python , 05 Eylül 2019 , JanFranco


Bu yazımda Python'da dosya işlemlerinin nasıl yapıldığından bahsedeceğim. Bir dosyayı açmak için open() fonksiyonunu kullanırız. Dosyayı açtıktan sonra, bu dosya ile ilgili ne yapacağımızı kip ile belirtiriz. 'w' yani write kipi ile dosyalara yazabilir, 'r' yani read kipi ile dosyaları okuyabiliriz. Var olan bir dosyaya ekleme yapmak istediğimizde 'a' yani append kipini kullanırız.
'w' ve 'a' kipi ile açtığımız dosyalar eğer mevcutta yoksa oluşturulur. 'r' kipi için böyle bir durum söz konusu değildir. doc.txt adında bir dosyaya veri yazalım:


file = open("doc.txt", "w")
file.write("Jan Franco\n")
file.close()
open() fonksiyonu bir file descriptor return eder. Eğer bu konu hakkında bilginiz yoksa C bölümündeki dosya işlemleri yazılarımı okuyabilirsiniz. Bu descriptor'ı file adındaki bir değişken ile yakaladık. write() methodu ile dosyaya "Jan Franco" verisini yazdık. Sonuna yeni satıra geçmek için \n karakterlerini ekledik. Dosyalarla işimiz bittiğinde dosyaları kapatmalıyız. close() methodu ile de dosyayı kapattık.
Aynı dosyaya "Jane Franco" verisini yazalım:


file = open("doc.txt", "a", encoding="utf-8")
file.write("Jane Franco")
file.close()
Ekleme yapacağımızdan bu sefer dosyayı 'a' kip ile açtık. Türkçe karakterler için encoding="utf-8" parametresini kullanabiliriz.
Dosyaları okumak için 'r' kipini kullanacağımızı biliyoruz. Eğer mevcutta dosya yoksa hata alırız, bu hatayı yakalamamız gerekir. Bunu göz önünde bulundurarak oluşturduğumuz doc.txt dosyasını okuyalım:


try:
    file = open("doc.txt", "r", encoding="utf-8")
except FileNotFoundError:
    print("File could not found.")

for i in file:
    print(i)

file.close()
>>
Jan Franco

Jane Franco
Dosya okuma işlemlerinde for döngülerini kullanabiliriz. Burada i değişkeni her bir satıra denk geliyor. Dosyayı oluştururken \n karakterlerini kullandığımızdan arada gereksiz bir boşluk oluştu. Bunu engellemek için print() fonksiyonunun end parametresini kullanabiliriz:


file = open("doc.txt", "r", encoding="utf-8")

for i in file:
    print(i, end="")

file.close()
>>
Jan Franco
Jane Franco


Sonraki Yazı: File Operations in Python, read(), readlines()
Yorumlar

Henüz bir yorum bulunmuyor.
Yorum bırakın