Форум сайта python.su
Проблема…
Мне необходимо преобразовать кирилические символы в hex unicode.
И именно так как это делается в Виндовом Charmap'e, т.е. например буква ‘П’ там имеет код “U+041F” - и оно есть верно.
Делал операцию в .NET'е получал 1F, т.е. почти правда.
В Python'е делаю так:
>>> unicode("П".decode('cp1251'))
u'\u040f' # не то
>>> unicode("П",'cp1251')
u'\u040f' # тож самое :)
>>> "П".encode('hex')
'8f' # всё не то
Отредактировано (Июнь 3, 2008 21:29:46)
Офлайн
А ты в каком месте вбиваешь? =)
Не может быть путаницы с входными кодировками?
Отредактировано (Июнь 3, 2008 21:38:40)
Офлайн
shiza:lol::lol::lol: Да, действитна, дело в том, что я тестил эти строки в Python(Command line) - дурная привычка.
А ты в каком месте вбиваешь? =)
Не может быть путаницы с входными кодировками?
Офлайн
Информация о букве П
но даже несмотря на это,
In [1]: # -*- coding: utf-8 -*-
In [2]: u'П'.encode('utf-16').encode('hex')
Out[2]: 'fffe1f04'
In [3]: hex(1055)
Out[3]: '0x41f'
Офлайн
Офлайн
>>> hex(ord©)
Конено ты должен разобраться сначала с кодировкой. “c” это строка длиной 1, соответственно она не может быть utf-8 и т.п., так как в этом случае строка будет длиной 2 символа и ord такую строку не проглотит.
..bw
Офлайн
AndityЗамечательный доклад. Спасибо!
Доклад в тему:
http://www.rupy.ru/member/5/#paper-6
Отредактировано (Июнь 4, 2008 11:59:26)
Офлайн
А что означают такие вот кавычки? `ustr`
Офлайн
``==repr()
Офлайн