APK xətaları

ödəyici sözü ödÉ™yici olur

UTF-8-də ə iki baytdır: C9 99. Windows-1252 bu baytları hərf kimi oxuyur: C9 É, 99 isə ™ olur. Ona görə ə ekranda É™ kimi görünür. ö eyni yolla ö olur. ödəyici beləcə ödÉ™yici yazılır.

Türk səhifələri ş, ğ, ı üçün cədvəl verir. É™ o cədvəldə yoxdur, çünki türkcədə ə yoxdur.

Hərf artıq ? olubsa, bu kod onu qaytarmır. Bayt itib.

Düzəlmiş mətni yenidən utf-8 saxla. Eyni faylı bir daha cp1252 kimi oxuma.

def duzelt(metn: str) -> str:
    return metn.encode("cp1252").decode("utf-8")

print(duzelt("ödəyici"))