Мне нужно сделать в Python 2.4 (да, 2.4 :-().
У меня есть объект простой строки, представляющий некоторый текст, закодированный с помощью UTF-8. Он поступает из внешней библиотеки, которую нельзя изменить.
Итак, я думаю, мне нужно создать объект Unicode, используя байты из этого исходного объекта, а затем преобразовать его в какую-то другую кодировку (фактически iso-8859-2).
Объект простой строки - «x». "Unicode ()", кажется, не работает:
>>> x
'Sk\xc5\x82odowski'
>>> str(unicode(x, encoding='iso-8859-2'))
Traceback (most recent call last):
File "<stdin>", line 1, in ?
UnicodeEncodeError: 'ascii' codec can't encode characters in position 2-3: ordinal not in range(128)
>>> unicode(x, encoding='iso-8859-2')
u'Sk\u0139\x82odowski'