Как я могу конвертировать из U + 0043 в C, используя Python? - PullRequest
1 голос
/ 07 октября 2011

Существует ли что-то, что может принимать в качестве входных данных U + 0043 и выдавать в качестве выходных данных букву C, может быть, даже небольшое описание символа (например, LATIN CAPITAL LETTER C)?

РЕДАКТИРОВАТЬ: U+0043 это просто пример.Я хотел бы получить общее решение, которое могло бы работать для максимально возможного количества кодовых точек.

Ответы [ 4 ]

4 голосов
/ 07 октября 2011

unicodedata.name выглядит многообещающе. Конечно, вам понадобится немного (тривиального) разбора, если у вас есть строковый ввод типа U+0043.

3 голосов
/ 07 октября 2011

Хакерский путь:

import unicodedata

codepoint = b"U+0043"
char =  codepoint.replace('U+', "\u").decode('unicode-escape')
# or char = unichr(int(codepoint.replace('U+', ''), 16))

print char
print unicodedata.name(char)
2 голосов
/ 07 октября 2011
import unicodedata
print unicodedata.name(u'C') # or unicodedata.name(u'\u0043')
# LATIN CAPITAL LETTER C
0 голосов
/ 07 октября 2011

Вы можете сделать chr(0x43) получить C.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...