write ve writelines
- Python kursu
- Orta seviye
- Ders 66/116
- 4 dk
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
# writelines ile üç satır yaz ve kapat
# Yeniden aç, readlines ile oku, sayıyı yazdırÖrnek çözüm
# 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
f.____("Merhaba
")
f.write("Merhaba
")
Açıklama: write tek bir dize yazar.