如何在不打补丁的情况下本地化python的argparse模块?

希布57

当消息的某些部分使用用户语言,而另一些消息使用英语时,本地化的命令行应用程序看起来很奇怪。

我不知道从源代码安装Python 3时是否搞砸了任何东西,似乎没有*.mo文件,因此argparse(整体上)不支持本地化。

该API似乎也没有提供本地化的方法。还是我错过了?

我可以打补丁argparse.py,但我不会打补丁,因为我希望它是可移植的,并且我不建议用户打补丁他们的Python安装。

用更少的问题问:如何在argpase不修补Python标准库的情况下进行本地化

相关问题:这可能吗?

沃尔夫

默认情况下,argparse使用gettext模块来翻译消息,因此您可以根据需要轻松地翻译它们。

要生成*.pot文件(可以*.mo在翻译后将其转换为文件),可以使用pythonpygettext内置gettext模块中提供程序

用法:

python pygettext.py argparse.py

这将生成一个messages.pot您可以翻译的,之后就可以生成了.mo(很多方法可以做到这一点,只是google)。

有关更多信息,pygettext请参见有关主题的Python手册:国际化程序和模块

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在没有情节提要的情况下应用本地化

如何在没有 Bundle 对象的情况下获取 OSGi 包头的本地化值

如何在不使用任何框架的情况下本地化一个简单的网站?

如何打补丁本地功能?

将模块下载到本地文件夹后如何在没有pip的情况下安装python模块

如何在不导入的情况下模仿Python模块?

如何在不打开 Excel 的情况下运行宏

如何在不打开文件的情况下写入文件

如何在不打开文件的情况下选择文件?

我如何在不打扰其余代码的情况下使分钟间隔计时器在本地响应

如何在不打开 Prism 中的 MainWindow 的情况下创建模块目录和 Reigster 类型

在文化可变的情况下,格式化不含日期的本地化日期

如何在yocto中打补丁?

在不使用NSLocalizedStrings的情况下访问本地化文件

如何在没有 .py 扩展名的情况下运行 argparse python 程序?

如何在不导入模块的情况下运行模块?

Python:如何猴子打补丁(交换)类

如何在不使用php的情况下制作模块化网站?

如何在不打开计算机电源的情况下保持discord python bot的运行?

如何在不打开编辑器的情况下运行python程序(用Enthought Canopy编写)?

如何在不导入的情况下从已编译的Python模块获取函数名?

Python 3.4:如何在给定完整路径的情况下导入模块?

如何在不导入的情况下检查python模块是否存在

如何在不构建模块的情况下向Python公开C ++类

如何在不真正导入的情况下使用长python模块包的别名?

如何在不导入其他模块的情况下更改python中文本的颜色?

如何在不重新安装模块的情况下更新mac python

如何在Python中没有任何模块的情况下求解方程?

如何在没有外部模块的情况下清理 Python 3 文本块?