
Python Koşullu İfadeler (If-Else) ve Döngüler (For-While) Kullanımı
31 Temmuz 2026
Python Nesne Yönelimli Programlama (OOP) Temelleri: Class ve Object
31 Temmuz 2026Python, veri işleme ve dosya yönetimi konularında güçlü bir araçtır. Bu makalede, Python ile dosya okuma ve yazma işlemlerini ele alarak TXT, CSV ve JSON formatlarındaki verilerle nasıl etkili bir şekilde çalışabileceğinizi öğrenebilirsiniz. İster veri analisti, ister yazılım geliştirici olun, bu bilgiler işinize yarayacaktır.
İçindekiler
Python ile TXT Dosyası Okuma ve Yazma
Python, dosya okuma ve yazma işlemleri için oldukça kullanıcı dostu ve etkili bir dil olmasının yanı sıra, metin dosyaları (TXT) ile çalışma konusunda da birçok kolaylık sağlar. TXT dosyaları, düz metin formatında saklanan veriler içerir ve bu nedenle Python ile işlemesi son derece basittir. Python’da bir TXT dosyasını okumak için genellikle ‘open’ fonksiyonu kullanılır. Bu fonksiyon, dosyayı açar ve üzerinde işlem yapmanızı sağlar. Öncelikle dosyayı okuma modunda açmak gerekir. Örneğin:
Örnek:
with open('ornek_dosya.txt', 'r') as dosya:
icerik = dosya.read()
print(icerik)
Yukarıdaki örnekte, ‘ornek_dosya.txt’ adlı dosya okuma modunda açılmış ve içeriği ‘icerik’ değişkenine atanmıştır. ‘with’ ifadesi kullanılarak dosya açıldığında, işlem tamamlandığında dosyanın otomatik olarak kapatılması sağlanır. TXT dosyası ile yazma işlemi de benzer bir şekilde gerçekleştirilir. Yazma modu açılarak (örneğin ‘w’ modunda) istediğiniz metni dosyaya ekleyebilirsiniz:
Örnek:
with open('yeni_dosya.txt', 'w') as dosya:
dosya.write('Bu bir örnek yazıdır.')
Bu işlem sonucunda ‘yeni_dosya.txt’ adlı bir dosya oluşturulacak ve içerisine belirtilen metin yazılacaktır. Eğer dosya zaten mevcutsa, içeriği silinir ve yeni yazı eklenir. Eğer mevcut içeriğe ekleme yapmak istiyorsanız, ‘a’ (append) modunu kullanabilirsiniz.
CSV Formatında Veri İşleme
CSV (Comma-Separated Values) formatı, verilerin virgülle ayrılmış biçimde saklandığı bir dosya formatıdır ve veri analizi için oldukça yaygın olarak kullanılır. Python, CSV dosyalarını okumak ve yazmak için yerleşik ‘csv’ kütüphanesini sunar. Bu kütüphane, veri setlerini kolayca işlemek için gerekli fonksiyonları sağlar. CSV dosyası okuma işlemi için öncelikle dosya açılmalı ve ardından ‘csv.reader’ kullanılarak içerik okunmalıdır. Aşağıda basit bir örnek verilmiştir:
Örnek:
import csv
with open('veri_seti.csv', 'r') as dosya:
okuyucu = csv.reader(dosya)
for satir in okuyucu:
print(satir)
Bu örnekte, ‘veri_seti.csv’ adlı dosya okunmakta ve her bir satır ayrı bir liste olarak ekrana yazdırılmaktadır. CSV dosyasına veri yazma işlemi de oldukça basittir. ‘csv.writer’ kullanarak yeni verileri ekleyebilirsiniz. Aşağıda bir yazma örneği bulunmaktadır:
Örnek:
with open('yeni_veri_seti.csv', 'w', newline='') as dosya:
yazici = csv.writer(dosya)
yazici.writerow(['isim', 'yas', 'sehir'])
yazici.writerow(['Ahmet', 30, 'İstanbul'])
yazici.writerow(['Ayşe', 25, 'Ankara'])
Bu kod çalıştırıldığında ‘yeni_veri_seti.csv’ adlı bir dosya oluşturulacak ve ilk satıra başlıklar, takip eden satırlara ise veriler yazılacaktır. CSV dosyalarının veri analizi ve raporlamada sağladığı kolaylıklar, özellikle büyük veri setleri ile çalışırken oldukça değerlidir.
JSON Dosyaları ile Çalışmak
JSON (JavaScript Object Notation), veri alışverişi için yaygın olarak kullanılan bir format olup, özellikle web uygulamaları ve API’ler arasında veri iletimi için idealdir. Python’da JSON dosyaları ile çalışmak oldukça basittir ve bu işlem için yerleşik json modülü kullanılabilir. JSON dosyalarını okumak ve yazmak, Python’daki veri yapıları ile kolayca entegre edilebilir ve bu sayede veri yönetimi daha verimli hale gelir.
JSON dosyalarını okumanın en yaygın yolu, bu dosyayı açmak ve içeriğini bir Python veri yapısına dönüştürmektir. Aşağıdaki örnek, bir JSON dosyasını okuma işlemini göstermektedir:
import json
# JSON dosyasını okuma
with open('data.json', 'r') as json_file:
veriler = json.load(json_file)
print(veriler)
Yukarıdaki kod parçasında, data.json adlı dosyayı okuyoruz ve json.load() fonksiyonu ile dosya içeriğini Python veri yapısına dönüştürüyoruz. Benzer şekilde, JSON verilerini dosyaya yazmak da mümkündür. Aşağıda JSON verisini bir dosyaya yazma işlemi hakkında bir örnek verilmiştir:
import json
# Yazılacak veri
veriler = {'isim': 'Ahmet', 'yas': 30, 'meslek': 'Mühendis'}
# JSON dosyasına yazma
with open('output.json', 'w') as json_file:
json.dump(veriler, json_file, indent=4)
Bu örnekte, json.dump() fonksiyonu ile Python veri yapısını JSON formatında bir dosyaya yazıyoruz. indent parametresi, dosyanın okunabilirliğini artırmak için girintiyi ayarlamamıza olanak tanır. JSON formatı, veri yapılarının hiyerarşik düzenini koruduğundan, karmaşık verileri bile kolayca yönetmenizi sağlar.
Hata Yönetimi ve Dosya İşlemlerinde En İyi Uygulamalar
Dosya okuma ve yazma işlemleri sırasında birçok hata ile karşılaşmak mümkündür. Bu hataları etkili bir şekilde yönetmek, programınızın kararlılığını artırır ve kullanıcı deneyimini geliştirir. Python’da hata yönetimi için try-except blokları kullanılır. Bu bloklar, kodun belirli bir bölümünde hata meydana geldiğinde, programın çökmesini önler ve hata ile ilgili bilgi sağlar.
Örneğin, bir dosya açma işlemi sırasında dosyanın mevcut olmaması durumunda bir hata meydana gelebilir. Aşağıdaki örnekte, dosya okuma işlemi için hata yönetimi nasıl uygulanır gösterilmektedir:
try:
with open('veri.txt', 'r') as dosya:
icerik = dosya.read()
except FileNotFoundError:
print("Dosya bulunamadı!")
except Exception as e:
print(f"Bir hata oluştu: {e}")
Bu örnekte, dosyanın bulunamaması durumunda FileNotFoundError hatasını yakalıyoruz ve kullanıcıya bu durumu bildiriyoruz. Ayrıca genel bir Exception hatası için de bir yakalama işlemi ekleyerek, beklenmeyen hatalarda kullanıcıya bilgi veriyoruz. Hata yönetimi, kullanıcıların hatalarla karşılaşmasını önlemek ve sorunları çözmeyi kolaylaştırmak için kritik bir öneme sahiptir.
Dosya işlemlerinde en iyi uygulamalar arasında aşağıdakiler yer alır:
- Her zaman with ifadesini kullanarak dosyaları açın. Bu, dosyanın otomatik olarak kapatılmasını sağlar.
- Dosya yolunu belirtirken mutlak yolları kullanmayı tercih edin. Böylece dosya bulunamama hatasını en aza indirgeyebilirsiniz.
- Güvenilir dosya formatları kullanın. Örneğin, JSON, CSV veya XML gibi yaygın formatlar, veri yönetiminizi kolaylaştırır.
- Hata mesajlarını açıklayıcı yapın. Kullanıcının ne olduğunu anlamasını sağlamak için hata mesajları açık olmalıdır.
Bu en iyi uygulamalar, dosya işlemleri sırasında karşılaşabileceğiniz sorunları önleyerek daha dayanıklı ve güvenilir bir kod yazmanıza yardımcı olur.
Veri Okuma ve Yazma İşlemlerinde Performans İyileştirmeleri
Python ile dosya okumak ve yazmak birçok uygulama geliştiricisi için temel bir işlemdir. Ancak, özellikle büyük veri setleri ile çalışırken performans kritik bir öneme sahiptir. Bu nedenle, dosya okuma ve yazma işlemlerinde performansı iyileştirmenin yollarını anlamak gereklidir. Öncelikle, dosyaları okuma ve yazma işlemlerinin nasıl gerçekleştirileceğine dair temel bilgiler verilmelidir.
Python’da dosya işlemleri genellikle “open” fonksiyonu ile başlar. Bu fonksiyon dosyayı açar ve belirli bir modda (okuma, yazma, ekleme gibi) işlemler yapmamıza olanak tanır. Ancak, dosya okuma ve yazma işlemleri arasında performans farklılıkları olabilir. Örneğin, bir dosyayı satır satır okumak yerine tüm içeriğini bir defada okumak, performansı artırabilir. Bunun sebebi, dosya açılıp kapandıkça oluşan işlemlerin zaman almasıdır. Aşağıda performans iyileştirmeleri için bazı öneriler sıralanmıştır:
- Buffering Kullanımı: Python, dosya okuma ve yazma işlemlerinde tampon bellek (buffering) kullanır. Bu, verilerin daha verimli bir şekilde işlenmesini sağlar. Bu nedenle, dosyayı açarken “buffering” parametresini kullanarak performansı artırabilirsiniz.
- Kütüphaneleri Kullanmak: Pandas ve NumPy gibi kütüphaneler, veri okuma ve yazma işlemlerini optimize etme konusunda oldukça etkilidir. Özellikle büyük veri setlerinde bu kütüphanelerle çalışmak, işlemlerinizin hızını artırabilir.
- Veri Formatına Dikkat Etmek: CSV dosyaları genellikle metin tabanlı olduğundan, büyük veri setlerinde daha yavaş olabilirler. JSON veya binary formatlar, okuma ve yazma işlemlerinde genellikle daha hızlı sonuçlar verebilir.
- Asenkron İşlemler: Eğer büyük veri setleri üzerinde paralel işlemler yapıyorsanız, asenkron programlama yaparak işlemlerinizi hızlandırabilirsiniz. Python’da “asyncio” kütüphanesi bu tür işlemler için oldukça kullanışlıdır.
Bunların yanı sıra, dosya okuma ve yazma işlemleri sırasında birden fazla dosya ile çalışıyorsanız, “with” ifadesini kullanarak dosyaları otomatik olarak kapatmayı ve kaynak yönetimini kolaylaştırabilirsiniz. Bu, bellek sızıntılarını önlemeye yardımcı olur ve genel performansı artırır. Bunun yanında, dosya işlemleri sırasında hata yönetimi, performansı doğrudan etkiler; hataları önceden tahmin etmek ve yönetmek, sürdürülebilir bir uygulama için kritik öneme sahiptir.
Sonuç olarak, Python ile veri okuma ve yazma işlemlerinde performans iyileştirmeleri yaparak verimliliğinizi artırabilirsiniz. Yukarıda bahsedilen yöntemleri deneyerek, ihtiyaçlarınıza en uygun olanını belirleyebilir ve uygulamalarınızda daha hızlı ve etkili dosya işlemleri gerçekleştirebilirsiniz.
Sıkça Sorulan Sorular
Python ile dosya okuma işlemi nasıl yapılır?
Python’da dosya okuma işlemi, “open” fonksiyonu kullanılarak gerçekleştirilir. Dosya açıldıktan sonra, “read” veya “readline” yöntemleri ile içeriği okuyabilirsiniz.
CSV dosyaları Python’da nasıl işlenir?
CSV dosyaları, Python’da “csv” modülü ile kolayca işlenebilir. “csv.reader” veya “csv.writer” fonksiyonları ile dosya içeriğini okuyabilir veya yazabilirsiniz.
JSON dosyalarını Python’da nasıl kullanabilirim?
Python’da JSON dosyaları ile çalışmak için “json” modülünü kullanabilirsiniz. “json.load” ile dosyadan veri okuyabilir veya “json.dump” ile dosyaya veri yazabilirsiniz.
Pandas kütüphanesi nedir ve ne için kullanılır?
Pandas, veri analizi ve manipülasyonu için kullanılan bir kütüphanedir. CSV ve Excel dosyalarını hızlı bir şekilde okuyup yazmak için oldukça etkilidir.
Python’da dosya açma modları nelerdir?
Python’da dosyalar “r” (okuma), “w” (yazma), “a” (ekleme) ve “rb”/”wb” (binary okuma/yazma) gibi modlarla açılabilir.
Veri okuma performansını artırmak için hangi yöntemler vardır?
Veri okuma performansını artırmak için buffering kullanmak, dosyayı toplu şekilde okumak ve gerekli kütüphaneleri tercih etmek önemlidir.
Python’da dosya işlemleri sırasında hata yönetimi nasıl yapılır?
Python’da dosya işlemleri sırasında hata yönetimi için “try-except” blokları kullanarak olası hataları yakalayabilir ve uygun önlemleri alabilirsiniz.
Asenkron dosya okuma işlemi nedir?
Asenkron dosya okuma, bir dosyanın okuma işleminin diğer işlemlerle aynı anda gerçekleştirilmesi anlamına gelir. Python’da “asyncio” modülü ile yapılabilir.
Performans iyileştirmeleri için hangi veri formatları tercih edilmelidir?
Büyük veri setleri için JSON veya binary formatlar, genellikle CSV formatlarından daha iyi performans gösterir.
Python’da dosyaları kapatmanın önemi nedir?
Dosyaları kapatmak, bellek sızıntılarını önler ve sistem kaynaklarının etkin kullanımını sağlar. “with” ifadesi kullanarak otomatik kapatma işlemi yapabilirsiniz.
Pandas ile CSV dosyası nasıl okunur?
Pandas ile CSV dosyası okumak için “pd.read_csv(‘dosya_adi.csv’)” ifadesini kullanarak veri çerçevesi oluşturabilirsiniz.
Pandas ile JSON dosyası nasıl yazılır?
Pandas ile JSON dosyası yazmak için “df.to_json(‘dosya_adi.json’)” komutunu kullanabilirsiniz.
Binary dosya okuma işlemi nasıl yapılır?
Binary dosya okuma işlemi, “open” fonksiyonunda “rb” modunu kullanarak gerçekleştirilir. “read” metoduyla veriler okunabilir.
Birden fazla dosya ile çalışırken dikkat edilmesi gerekenler nelerdir?
Birden fazla dosya ile çalışırken dosyaların açık kalmaması, kaynak yönetimi ve hata yönetimi konularına dikkat edilmelidir.
Python’da dosya yazma sırasında otomatik kapatma nasıl sağlanır?
“with” ifadesi kullanarak dosyayı açtığınızda, işlem sonunda dosya otomatik olarak kapatılır, bu da hata riskini azaltır.
Pandas kullanmadan CSV dosyası okuma yöntemleri nelerdir?
CSV dosyası, “open” fonksiyonu ve “csv” modülü ile manuel olarak okunabilir. “csv.reader” ile satırları okuma işlemi gerçekleştirilebilir.
Python’da dosya okuma süresi nasıl ölçülür?
Dosya okuma süresini ölçmek için “time” modülünü kullanarak, okuma işlemi öncesinde ve sonrasında zaman damgaları alabilirsiniz.
Python’da dosya yazarken performans neden önemlidir?
Dosya yazma işlemleri genellikle zaman alıcıdır. Performans iyileştirmeleri, uygulamanızın hızını artırarak kullanıcı deneyimini iyileştirir.
JSON dosyalarının avantajları nelerdir?
JSON dosyaları, hafif ve insan tarafından okunabilir olmaları ile bilinir. Ayrıca, nested yapıları destekleyerek karmaşık verileri saklama imkanı sunar.
Python’da hata yönetiminin dosya işlemlerindeki rolü nedir?
Hata yönetimi, dosya işlemlerinde beklenmedik durumlarla başa çıkmak için gereklidir. Olumsuz durumları yönetmek, uygulamanızın daha güvenilir olmasını sağlar.




