dosya işlemleri logo

Merhaba arkadaşlar, önceki yazımda dosya işlemlerine kısaca giriş yapmıştık. Bu yazımda ise okuma işleminin detaylarına giriş yapacağız.

Bir dosyanın içeriği(metin dosyası) read metotu kullanılarak okunabilir. Aşağıya hemen bir dosya okuma işleminin kodunu ekliyorum:

dosya = open("dosyaAdi.txt", "r")
icerik = dosya.read()
print(icerik)
dosya.close()

Yukarıdaki kodu kullanarak dosya içerisindeki tüm metni bize gösterecektir.

Bir dosya içeriğinin hepsini değil de bir kısmını okumak istediğimizde ise, okuma metotu içerisine okumak istediğimiz byte miktarını girebiliriz. Okunan kısmın devamını okumak için, okumak/ görmek istediğimiz kadar byte miktarını girerek devamını okuyabiliriz.

Eğer read metotu içerisine byte olarak bir parametre göndermezsek geri kalan tüm metni döndürecektir.

Örnekleri aşağıda yer almaktadır.

dosya = open("dosyaAdi.txt", "r")
print(dosya.read(16))
print(dosya.read(8))
print(dosya.read(8))
print(dosya.read())
dosya.close()

Bir de burada negatif sayıları denemenizi istiyorum bakalım ne yapıyor bizim metot 🙂

Dosyadaki tüm içeriği okuduktan sonra, dosyanın devamını okumaya çalıştığınızda boş bir metin döndürür. Örneğine aşağıdan bakalım hemen.

dosya = open("dosyaAdi.txt", "r")
dosya.read()
print("Yeniden Okuma")
print(dosya.read()) # tekrar okuma girişimi
print("Bitti")
file.close()

# Çıktımız
"""
Yeniden Okuma

Bitti
"""

Dosya içeriğini satır satır da okuyabiliyoruz. Bunun için readlines metotu bulunuyor.

dosya = open(“dosyaAdi.txt”, “r”)
print(dosya.readlines())
dosya.close()

kodu

[‘1. Satır \n’, ‘2. Satır \n’, ‘3. Satır’]

çıktısını verecektir. Bu çıktıyı da temize çekmek için genelde split metotu kullanılmaktadır.

Satır satır okumanın bir başka kodu da aşağıdaki şekilde for döngüsü kullanılarak oluşturulabilir.

dosya = open("dosyaAdi.txt", "r")

for satir in dosya:
    print(satir)

dosya.close() 

# Çıktımız
"""
1. Satır

2. Satır

3. Satır
"""

Çıktımızda print fonksiyonu bir satır boşluk attığından birer boşluk ara ile çıktılarımıza ulaşıyoruz.

Umarım anlaşılır olmuştur. Bundan sonraki yazımda da python dosya üzerine yazma işlemlerine bakıyor olacağız.

 

Bunlara Göz Atmak İsteyebilirsiniz

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.