【发布时间】:2011-07-04 21:09:30
【问题描述】:
示例 python 程序:[CGI 脚本,因此它需要选择自己的语言,而不是使用主机操作系统设置的任何语言]
import gettext
gettext.install('test', "./locale")
_ = gettext.gettext
t = gettext.translation('test', "./locale", languages=['fr'])
t.install()
print _("Hello world")
./locale/fr/LC_messages/test.mo 包含翻译(作为二进制文件,通过在 .po 文件上运行 msgfmt 生成)。
程序打印“Hello world”而不是翻译版本。可能是什么问题?
【问题讨论】:
-
暗中刺伤,也许区分大小写?
-
大小写差异是实际程序中不存在的错字 - 我将编辑问题以解决该问题
-
你为什么使用
.install()(两次)和绑定_? -
啊,就是这样 - 绑定 _() 是问题所在。删除它,它就可以工作了。
-
回答并关闭,如果解决了,伙计们......
标签: python internationalization gettext