UnicodeDecodeError, bir dosyayı yanlış karakter kodlamasıyla okuduğunda oluşur — özellikle Türkçe karakterler (ç, ş, ğ) içeren dosyalarda.

Neden olur?

Python dosyayı varsayılan kodlamayla açmaya çalışır; dosya UTF-8 ise ve sistem farklı bir kodlama kullanıyorsa hata verir.

Hatalı kod

with open('notlar.txt') as f:   # kodlama belirtilmedi -> hata olabilir
    print(f.read())

Doğru kod

with open('notlar.txt', encoding='utf-8') as f:
    print(f.read())

Kontrol listesi

  • Dosya açarken her zaman encoding='utf-8' belirt.
  • UTF-8 Türkçe dâhil çoğu dili destekler.
  • Yazarken de aynı kodlamayı kullan.

Python derslerimizle adım adım pratik yapabilirsin.