CodeBlanks Logo Icon CodeBlanks

read ve readline

read ve readline ile okumayı öğrenirsin.

read tüm içeriği verir

Dosya nesnesinin read() metodu dosyanın tüm içeriğini tek bir dize olarak döndürür. read(10) gibi bir sayı verirsen yalnızca ilk 10 karakteri okur. Büyük dosyalarda tüm içeriği bir anda belleğe yüklemek sorun olabilir; bu durumda parça parça okuma tercih edilir.

readline() ise her çağrıda bir satır döndürür. Satır sonundaki \n işaretini de içerir; son satırda bu işaret olmayabilir. Boş dize döndüğünde dosya sonuna gelmiş olursun.

readlines ile satır listesi

readlines() metodu dosyadaki tüm satırları bir liste olarak döndürür. Her öğe bir satırdır ve sonlarında \n bulunur. Satır sayısını len(lines) ile alabilirsin.

Bu metod küçük ve orta boy dosyalarda kullanışlıdır. Çok büyük dosyalarda belleği doldurabilir; bu durumda for line in f: döngüsü her satırı tek tek gezer ve belleği yormaz.

Uygulama İki satır yaz, readlines ile oku

Bir dosyayı yazma modunda aç: f = open("cift.txt", "w", encoding="utf-8"). İçine f.write("Birinci satır\nİkinci satır") yaz ve kapat. Sonra okuma modunda aç ve lines = f.readlines() ile satırları al. print(len(lines)) ile satır sayısını yazdır ve kapat.

Başlangıç kodu

main.py
# Dosyaya iki satır yaz ve kapat
# Yeniden aç, readlines ile satırları al, sayıyı yazdır

Örnek çözüm

main.py
# Dosyaya iki satır yaz ve kapat
f = open("cift.txt", "w", encoding="utf-8")
f.write("Birinci satır\nİkinci satır")
f.close()
# Yeniden aç, readlines ile satırları al, sayıyı yazdır
f = open("cift.txt", "r", encoding="utf-8")
lines = f.readlines()
print(len(lines))
f.close()

Beklenen çıktı

2

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 read metodu çağrısı

Soru
f = open("notlar.txt", encoding="utf-8")
content = f.____()
print(content)
Cevap
f = open("notlar.txt", encoding="utf-8")
content = f.read()
print(content)

Açıklama: read() tüm içeriği tek dize olarak döndürür.

2 readline() dosya sonunda ne döndürür?

  • Son satırı tekrar döndürür
  • Hata fırlatır
  • Boş dize döndürür Doğru cevap
  • None değeri döndürür

Açıklama: Dosya sonuna gelindiğinde readline() boş dize ("") döndürür.

3 Okuma metotlarını eşleştir

Kavram Anlamı
read Tüm içeriği verir
readline Tek bir satır verir
readlines Satır listesi verir
close Dosyayı kapatır

Orta seviye bölümündeki tüm dersler