b'\xfb'
- строка байтов, содержащая один байт.Этот байт имеет шестнадцатеричное значение FB или 251 в десятичном виде.
'\xfb'
- строка, содержащая одну кодовую точку Unicode.Эта кодовая точка - U + 00FB LATIN SMALL LETTER U WITH CIRCUMFLEX, или û
.
b'\xfb'
- это , а не кодировка UTF-8 '\xfb'
.Кодировка UTF-8 '\xfb'
равна b'\xc3\xbb'
:
>>> '\xfb'.encode('utf-8')
b'\xc3\xbb'
Фактически, b'\xfb'
вообще не является кодировкой UTF-8 вообще, и пытается декодировать ее как UTF-8.это ошибка.'backslashreplace'
указывает способ обработки этой ошибки, когда байт FB заменяется последовательностью символов backslash-xfb.
Хотя можно сделать что-то, что преобразует b'\xfb'
в '\xfb'
,это преобразование не имеет ничего общего с UTF-8, и применение этого преобразования без уточнения ваших требований только вызовет больше проблем.Вы должны выяснить, что на самом деле должна делать ваша программа.Скорее всего, правильный путь вперед не предполагает преобразования b'\xfb'
в '\xfb'
.Мы не можем сказать, что вам нужно сделать, так как нам не хватает такого контекста.