Dosya I/O
- Python kursu
- Orta seviye
- Ders 115/116
- 6 dk
Verileri JSON olarak kaydedip yüklersin.
Dosya I/O: with ile oku
Bu derste with deyimi ile bir dosya benzeri nesneden okuma yapacaksın. io.StringIO bir dizeyi dosya gibi okunabilir yapar:
from io import StringIO
with StringIO("kiraz") as f:
print(f.read())Başlangıç kodu önceki çözümleri içerir. Sen from io import StringIO ve with bloğunu ekleyeceksin. StringIO dosya işlemlerini test etmek için kullanışlıdır.
Bu, gerçek dosya okuma kodunun iskeletidir.
Uygulama StringIO ile with bloğu yaz
from io import StringIO yaz. with StringIO("kiraz") as f: bloğu içinde print(f.read()) yaz.
Başlangıç kodu
# Kelime işleme - kelime listesi
words = ["elma", "armut", "elma"]
print(len(words))
def say(words):
return len(set(words))
print(say(words))
def uret(words):
for w in words:
yield w
for w in uret(words):
print(w)
# StringIO ile with bloğu yazÖrnek çözüm
words = ["elma", "armut", "elma"]
print(len(words))
def say(words):
return len(set(words))
print(say(words))
def uret(words):
for w in words:
yield w
for w in uret(words):
print(w)
from io import StringIO
with StringIO("kiraz") as f:
print(f.read())Beklenen çıktı
3 2 elma armut elma kiraz
Sıradaki adım: birleştirme
Dosya I/O hazır — with ile dosya benzeri nesnelerden okuyabiliyorsun. Son derste her şeyi bir sınıf içinde birleştireceksin: Sayac sınıfı tanımlayıp kullanacaksın. Bu son katman, kodu modüler ve yeniden kullanılabilir hâle getirecek.
Sınıflar, veriyi ve yöntemleri bir arada tutar; böylece kod düzenli ve test edilebilir olur. Projenin tüm parçaları artık bir araya geliyor.
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 StringIO içe aktarımını tamamla
from io import ____
with StringIO("kiraz") as f:
print(f.read())
from io import StringIO
with StringIO("kiraz") as f:
print(f.read())
Açıklama: StringIO io modülünden gelir.
2 with bloğu bitince StringIO nesnesi ne olur?
- Açık kalır
- Silinir
- Hata verir
- Otomatik kapanır Doğru cevap
Açıklama: with bloğu bitince nesne otomatik kapanır.
3 Dosya I/O eşleştir
| Kavram | Anlamı |
|---|---|
from io import StringIO |
İçe aktarım |
with StringIO |
Bloğu başlatır |
f.read() |
Okur |
with sonu |
Otomatik kapatır |