Подтвердить что ты не робот

Преобразование строки юникода в строку байта

Я получаю строку от функции, представленной как u'\xd0\xbc\xd0\xb0\xd1\x80\xd0\xba\xd0\xb0', но для ее обработки мне нужно, чтобы она была байтовой (например, '\xd0\xbc\xd0\xb0\xd1\x80\xd0\xba\xd0\xb0').

Как мне преобразовать его без изменений?

До сих пор я догадываюсь взять s.encode('unicode_escape'), который вернет '\\xd0\\xbc\\xd0\\xb0\\xd1\\x80\\xd0\\xba\\xd0\\xb0' и обработает каждые 5 символов, чтобы "\ xd0" стал одним символом, представленным как "\ xd0".

4b9b3361

Ответ 1

ISO 8859-1 (aka Latin-1) сопоставляет первые 256 кодов Unicode с их байтовыми значениями.

>>> u'\xd0\xbc\xd0\xb0\xd1\x80\xd0\xba\xd0\xb0'.encode('latin-1')
'\xd0\xbc\xd0\xb0\xd1\x80\xd0\xba\xd0\xb0'