Мне нужно преобразовать массив байтов, который содержит некодированные исходные данные Unicode, в строку Unicode, например, unicode \ u2167 представляет римское число 8:
print(u'\u2167')
Ⅷ
с сохранением этой информации в массиве байтов I нужно найти способ преобразовать его обратно в Unicode. Декодирование, например, 'utf8', очевидно, не работает:
b = bytearray([0x21,0x67])
print(b.decode('utf8'))
!g
Есть идеи?
РЕДАКТИРОВАТЬ
Комментарий @ Luke получил меня справа трек. По-видимому, исходные данные (не упрощенные, которые я показываю здесь) закодированы как UTF-16le. Данные получены из объекта wx python TextDataObject. wx python для внутреннего использования обычно использует юникод. Это заставило меня подумать, что я имею дело с данными Unicode.