Как экранировать символы юникода для обозначения имен в Python? - PullRequest
2 голосов
/ 13 августа 2011

То, чего я хочу достичь, это

Í -> í
ø -> ø
ñ -> ñ
...

Есть ли в Python стандартный способ для этого или мне нужно создать свой собственный словарь и использовать его для ручной раскраски символов?

Я нашел много подсказок об обратном здесь, на SO, но ни одного, который отвечал бы на мои вопросы.

Ответы [ 2 ]

3 голосов
/ 13 августа 2011

Вы ищете htmlentitydefs :

In [217]: import htmlentitydefs

In [224]: ['&'+htmlentitydefs.codepoint2name[ord(x)]+';' for x in u'Íøñ']
Out[224]: ['Í', 'ø', 'ñ']
1 голос
/ 13 августа 2011

Попробуйте это:

import htmlentitydefs

def EscapeUnicode(character):
    return "&%s;" % htmlentitydefs.codepoint2name[ord(character)]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...