Python gettext: конвертировать литералы Unicode в текст

1

Я работаю в Windows. Python 2.7.2 У меня есть модуль, в котором я должен перевести несколько сообщений с gettext. Поэтому я создаю файл UTF-8 без BOM *.po, вытаскиваем из него *.mo и используем следующий код:

 t = gettext.translation('index','./locale',  languages=['ru'])
_= t.ugettext
t.install()

В результате у меня есть что-то вроде этого:

(u'\u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430')

Как скрыть его в общий текст UTF-8?

  • 0
    Где вы пытаетесь отобразить этот текст?
  • 0
    в консоли через печать. если я показываю его в веб-шаблон, все идет хорошо.
Показать ещё 7 комментариев
Теги:
unicode
gettext
internationalization

1 ответ

1
Лучший ответ

Как скрыть его в общий текст UTF-8?

Это неправильный вопрос. :) Это уже текст UTF-8... То, что вы пытаетесь понять, - это показать его как алфавитные символы. Это должно быть автоматическим во всем, что использует строки как визуальный вывод. Самый простой случай - функция print (или оператор).

>>> print u'\u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430'
системная ошибка

Ещё вопросы

Сообщество Overcoder
Наверх
Меню