Кодировать специальный символ (символ) юникода в Python? - PullRequest
2 голосов
/ 29 февраля 2012

Я использую Python (в частности, Tornado Framework) для разработки веб-сайта корпорации. Когда я выводил данные в html, были некоторые специальные символы, такие как (r) или (tm) в формате Юникод, например:

Google% u2122

Как я могу закодировать (или преобразовать) его в правильный, такой как Google (TM). Я пытаюсь использовать метод encode (), но он не работает.

Спасибо, очень мыч

1 Ответ

1 голос
/ 01 марта 2012

Спасибо Ikke за ссылку, так как я работаю в веб-среде (использую Tornado, как я уже упоминал), поэтому основной ответ там не соответствовал моему требованию, вместо этого https://stackoverflow.com/a/300556/183846:

from urllib import unquote

def unquote_u(source):
    result = unquote(source)
    if '%u' in result:
        result = result.replace('%u','\\u').decode('unicode_escape')
    return result

print unquote_u('Tan%u0131m')

Чтобы применить к шаблону Торнадо, я создаю f

...