Расшифровка французского акцента не работает с UTF-8 - PullRequest
0 голосов
/ 27 апреля 2020

Я пытаюсь декодировать эту очень простую переменную b'autorite nt\\syst\x8ame\r\n'

b'autorite nt\\syst\x8ame\r\n'
>>> t.decode('utf-8')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x8a in position 16: invalid start byte

Но ничего не работает, она должна печатать autorite nt\\système, но я не могу найти способ правильно ее распечатать

Ответы [ 2 ]

2 голосов
/ 27 апреля 2020

Не кодируется как UTF-8. Это может быть cp437 или любой из них: cp437, cp720, cp850, cp857, cp858, cp860, cp861, cp863, cp865 ( source )

>>> print(b'autorite nt\\syst\x8ame\r\n'.decode('cp437'))
autorite nt\système
0 голосов
/ 27 апреля 2020

Вы можете использовать декодирование с utf-8 правилом кодирования и замены.

t = b'autorite nt\\syst\x8ame\r\n'
t.decode('utf-8', 'replace')

Дополнительная информация: https://docs.python.org/3/howto/unicode.html

...