CodeBlanks Logo Icon CodeBlanks

write ve writelines

write ve writelines ile yazmayı öğrenirsin.

write ve writelines

Dosyaya metin yazmak için write metodunu kullanırsın: f.write("Merhaba\n"). Bu metod dizeyi olduğu gibi yazar; satır sonu için \n kendin eklersin. Dönüş değeri yazılan karakter sayısıdır.

Birden çok satırı tek seferde yazmak için writelines metodunu kullanırsın: f.writelines(["a\n", "b\n", "c\n"]). Liste halinde verilen dizeleri sırayla yazar; aralarına \n eklemez, kendin eklemen gerekir.

write dönüş değeri

write metodu yazılan karakter sayısını döndürür. n = f.write("Merhaba dünya") yazarsan n değişkeni 13 olur. Bu değer özellikle büyük verilerde ilerlemeyi izlemek için kullanışlıdır.

Türkçe karakterler UTF-8 kodlamasında birden fazla bayt kaplayabilir; ancak write yine de karakter sayısını döndürür. Bayt sayısını görmek istersen dosyayı ikili modda açman gerekir.

Uygulama writelines ile üç satır yaz

Bir dosyayı yazma modunda aç: f = open("liste.txt", "w", encoding="utf-8"). f.writelines(["elma\n", "armut\n", "kiraz\n"]) ile üç satır yaz ve kapat. Sonra okuma modunda aç, lines = f.readlines() ile satırları al, print(len(lines)) ile sayıyı yazdır ve kapat.

Başlangıç kodu

main.py
# writelines ile üç satır yaz ve kapat
# Yeniden aç, readlines ile oku, sayıyı yazdır

Örnek çözüm

main.py
# writelines ile üç satır yaz ve kapat
f = open("liste.txt", "w", encoding="utf-8")
f.writelines(["elma\n", "armut\n", "kiraz\n"])
f.close()
# Yeniden aç, readlines ile oku, sayıyı yazdır
f = open("liste.txt", "r", encoding="utf-8")
lines = f.readlines()
print(len(lines))
f.close()

Beklenen çıktı

3

Soru ve cevaplar

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

1 Yazma metotlarını eşleştir

Kavram Anlamı
write Tek dize yazar
writelines Dize listesi yazar
read Tüm içeriği okur
close Dosyayı kapatır

2 writelines araya \n ekler mi?

  • Evet, her dizenin arasına otomatik ekler
  • Hayır, yalnızca verilen dizeleri sırayla yazar Doğru cevap
  • Sadece son dizeye ekler
  • Sadece ilk dizeye ekler

Açıklama: writelines yalnızca verilen dizeleri sırayla yazar; \n kendin eklersin.

3 write metodunu tamamla

Soru
f.____("Merhaba
")
Cevap
f.write("Merhaba
")

Açıklama: write tek bir dize yazar.

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