Не знаю, может, этот вопрос уже и поднимался, но несколько часов гугления мне нормально ответа так и не дали.
Проблема следующего характера: я получаю от какой-то библиотеки строку, которая изначально была в utf-8, но выглядит она как обычная ascii-шная строка с кучей символов, записанных в виде
\xd0\xa3\xd0\xba\xd0\xb0\xd0\xb6
При попытке перекодировать её в UTF посредством
codecs.utf_8_encode
А дальше совсем интересно: обычное
>>> a = 'привет' >>> a '\xaf\xe0\xa8\xa2\xa5\xe2' >>> print a привет