Unicode Python, иметь номер Unicode в нормальной строке, хотите напечатать Unicode - PullRequest
0 голосов
/ 05 ноября 2011

Я использую IDLE на Windows 7. Когда я запускаю следующий код

uni = u"\u4E0D"
binary = uni.encode("utf-8")
print binary

Он печатает символ Юникода с номером 4E0D правильно.Но здесь я должен жестко закодировать номер Unicode вручную.Допустим, у меня есть обычная строковая переменная формата:

s="4E0D"

Как мне преобразовать это в символ Unicode?Т.е. я хочу сделать что-то вроде следующего псевдокода

s="4E0D"
uni=u"\u"+s

Спасибо!

Ответы [ 2 ]

7 голосов
/ 05 ноября 2011
s = '4e0d'
c = unichr(int(s, 16))
0 голосов
/ 05 ноября 2011

Не самый быстрый способ, но, по крайней мере, читаемый:

s = "4E0D"
orig = "\u" + s
uni = orig.decode('cp1252')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...