Post

13.1- Dosya İşlemleri

Python'da temel dosya işlemleri anlatılmıştır.

13.1- Dosya İşlemleri

1. Dosya Nedir?

Dosya; kalıcı veri saklamak için kullanılan, disk üzerinde yer alan veri yapısıdır. Python’da dosyalar genellikle:

  • Metin dosyaları (.txt, .csv, .json)
  • İkili dosyalar (.bin, .jpg, .pdf)

olarak ikiye ayrılır.


2. open() Fonksiyonu

Python’da dosya işlemleri open() fonksiyonu ile yapılır.

1
open(dosya_adi, mod, encoding)

Parametreler

ParametreAçıklama
dosya_adiDosya yolu veya adı
modDosya açma modu
encodingKarakter kodlaması (genelde utf-8)

3. Dosya Açma Modları

ModAçıklama
rOkuma (dosya yoksa hata verir)
wYazma (dosyayı siler / oluşturur)
aEkleme (dosyanın sonuna yazar)
xOluşturma (dosya varsa hata verir)
rbBinary okuma
wbBinary yazma

4. Dosya Okuma İşlemleri

4.1 read() – Tüm Dosyayı Okuma

1
2
3
4
5
file = open("veri.txt", "r", encoding="utf-8")
icerik = file.read()
file.close()

print(icerik)

4.2 readline() – Satır Satır Okuma

1
2
3
4
5
file = open("veri.txt", "r", encoding="utf-8")
satir = file.readline()
file.close()

print(satir)

4.3 readlines() – Liste Olarak Okuma

1
2
3
4
5
file = open("veri.txt", "r", encoding="utf-8")
satirlar = file.readlines()
file.close()

print(satirlar)

4.4 for Döngüsü ile Okuma (Önerilen)

1
2
3
with open("veri.txt", "r", encoding="utf-8") as file:
    for satir in file:
        print(satir.strip())

5. Dosya Yazma İşlemleri

5.1 write() – Dosyaya Yazma

1
2
3
with open("sonuc.txt", "w", encoding="utf-8") as file:
    file.write("Merhaba Python\n")
    file.write("Dosya yazma işlemi\n")

w modu dosyanın içeriğini tamamen siler.


5.2 writelines() – Listeyi Dosyaya Yazma

1
2
3
4
satirlar = ["Ali\n", "Veli\n", "Ayşe\n"]

with open("isimler.txt", "w", encoding="utf-8") as file:
    file.writelines(satirlar)

6. Dosyaya Ekleme (Append)

1
2
with open("log.txt", "a", encoding="utf-8") as file:
    file.write("Yeni kayıt eklendi\n")

7. with Kullanımının Önemi

1
2
with open("data.txt", "r") as file:
    veri = file.read()

Avantajları:

  • close() otomatik çağrılır
  • Bellek sızıntısı olmaz
  • Güvenlidir

8. Binary Dosya Okuma / Yazma

Binary Yazma

1
2
with open("veri.bin", "wb") as file:
    file.write(b"\x48\x65\x6C\x6C\x6F")

Binary Okuma

1
2
3
4
with open("veri.bin", "rb") as file:
    data = file.read()

print(data)

9. Dosya Hataları ve try-except

1
2
3
4
5
try:
    with open("olmayan.txt", "r") as file:
        print(file.read())
except FileNotFoundError:
    print("Dosya bulunamadı")

10. Dosya İmleci (seek, tell)

1
2
3
4
with open("veri.txt", "r") as file:
    print(file.tell())   # Konum
    file.seek(10)        # 10. byte'a git
    print(file.read())

11. Pratik Örnekler

11.1 Not Ortalaması Kaydetme

1
2
3
4
5
notlar = [70, 85, 90]

with open("notlar.txt", "w") as file:
    for n in notlar:
        file.write(f"{n}\n")

11.2 Dosyadan Veri Okuyup Hesaplama

1
2
3
4
5
6
7
toplam = 0

with open("notlar.txt", "r") as file:
    for satir in file:
        toplam += int(satir)

print("Ortalama:", toplam / 3)
This post is licensed under CC BY 4.0 by the author.