gettext: Python本地/国际化模块

gettext是兼用GNU gettext的国际化模块,使用纯Python实现。如果你不熟悉gettext,看:Linux下的本地/国际化gettext

简单的示例

first_gettext.py:

运行:

gettext: Python本地/国际化模块

我们还没有添加其它的语言支持,在这种情况下如果fallback为True,那么直接使用内置_中的字符串。如果fallback为False,返回“找不到翻译文件”异常:

下面我们来创建翻译文件。

提取源文件中使用的字符串(使用pygettext.py,或使用GUN gettext中的工具):

生成的first.po,文件名和代码中translation第一个参数对应:

修改文件中META信息,姓名、邮件、版本等等;charset改为:UTF-8;然后翻译:

代码中translation第二个参数代表翻译文件保存路径,创建目录结构:

创建mo文件:

设置LANGUAGE/LC_ALL/LC_MESSAGES/LANG 环境变量或更改系统语言进行测试:

gettext: Python本地/国际化模块

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注