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.