Python Glossary English

все Python 3codecsфункция

codecs.backslashreplace_errors()

обработчики ошибок

Обработчик ошибок 'backslashreplace': заменяет проблемный символ или байт экранированной записью вида \xe9, \u20ac или \xff.

Синтаксис

codecs.backslashreplace_errors(exception)

Лучший выбор для логов и диагностики: ничего не теряется, а по коду можно восстановить исходник. С 3.5 работает и при декодировании — плохой байт становится '\xff'. Его использует sys.stderr по умолчанию, поэтому print в stderr не падает на любом символе. Обратно в исходный текст результат сам не превратится.

Примеры

print('café €'.encode('ascii', 'backslashreplace'))  # → b'caf\\xe9 \\u20ac'
print(b'ok\xff'.decode('utf-8', 'backslashreplace'))  # → ok\xff

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности