Python'da Dosya Okuma ve Yazma: open() ve with Kullanımı

Python'da dosya işlemleri programlama için temel bir beceridir. Verileri kaydetmek, okunan bilgileri işlemek ya da raporlar oluşturmak için dosyalarla çalışmanız gerekir.

Dosya açmanın iki ana yolu vardır. Birincisi doğrudan open() fonksiyonunu kullanmak, ikincisi ise with ifadesini tercih etmektir.

open()

fonksiyonu dosyayı açar ve bir dosya nesnesi döndürür. Parametreleri şöyledir:

- Dosya adı
- Mod: 'r' (okuma), 'w' (yazma), 'a' (ekleme)
- Encoding: genellikle 'utf-8'

with

ifadesi daha güvenlidir çünkü dosyayı otomatik olarak kapatır. Hata oluşsa bile dosya kapanır.

Aşağıdaki kod, bir metin dosyasına veri yazar, sonra okur:

1# Dosyaya yazma
2with open('notlar.txt', 'w', encoding='utf-8') as dosya:
3dosya.write('Python öğreniyorum.\n')
4dosya.write('Dosya işlemleri kolay.\n')
5dosya.write('with ifadesi güvenli.')
6
7# Dosyayı okuma
8with open('notlar.txt', 'r', encoding='utf-8') as dosya:
9icerik = dosya.read()
10print(icerik)

Çıktı:
```
Python öğreniyorum.
Dosya işlemleri kolay.
with ifadesi güvenli.
```

Büyük dosyaları satır satır okumak bellek tasarrufu sağlar:

1with open('notlar.txt', 'r', encoding='utf-8') as dosya:
2for satir in dosya:
3print(satir.strip()) # strip() satır sonundaki \n kaldırır

Var olan dosyaya yeni içerik eklemek için 'a' modunu kullanın:

1with open('notlar.txt', 'a', encoding='utf-8') as dosya:
2dosya.write('\nYeni satır eklendi.')

with ifadesi, blok bittiğinde dosyayı otomatik kapatır. Böylece dosya kilitlenmez ve bellek sızıntısı olmaz. Hata oluşsa bile güvenlidir.

Dosya işlemlerinde with tercih etmek, profesyonel ve temiz kod yazmanın ilk adımıdır.

konu hakkında tepkinizi verebilirsiniz