Python gettext:将Unicode文本转为文本

1 投票
1 回答
756 浏览
提问于 2025-04-17 07:24

我在Windows系统上工作,使用的是Python 2.7.2版本。
我有一个模块需要用gettext来翻译一些信息。
所以我创建了一个没有BOM的UTF-8编码的*.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文本呢?

1 个回答

1

如何将其转换为常见的UTF-8文本?

这个问题问错了。:) 它已经是UTF-8文本了……你想要理解的是如何把它显示成字母字符。这在任何使用字符串作为视觉输出的地方应该都是自动完成的。最简单的例子就是 print 函数(或语句)。

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

撰写回答