在linux上,我们可以locale -a用来查看可用的语言环境列表.
$ locale -a
C
C.UTF-8
en_US.utf8
POSIX
Run Code Online (Sandbox Code Playgroud)
是否有可能从Windows上的python控制台做同样的事情?
当您尝试执行操作locale.setlocale(locale.LC_ALL, '???')并且根本不知道区域设置值的名称时,这可能很方便.
dev*_*ull 28
>>> import locale
>>> locale.locale_alias
Run Code Online (Sandbox Code Playgroud)
您可以在MSDN上查找可用的区域设置名称.
您必须将MSDN列表中"语言字符串"的长版本作为值传递给setlocale.默认的本地化短代码就像en_EN它们是locale_alias不要在一般的工作.
我已经将它们中的一些提取为字典:
LANGUAGES = {
'bg_BG': 'Bulgarian',
'cs_CZ': 'Czech',
'da_DK': 'Danish',
'de_DE': 'German',
'el_GR': 'Greek',
'en_US': 'English',
'es_ES': 'Spanish',
'et_EE': 'Estonian',
'fi_FI': 'Finnish',
'fr_FR': 'French',
'hr_HR': 'Croatian',
'hu_HU': 'Hungarian',
'it_IT': 'Italian',
'lt_LT': 'Lithuanian',
'lv_LV': 'Latvian',
'nl_NL': 'Dutch',
'no_NO': 'Norwegian',
'pl_PL': 'Polish',
'pt_PT': 'Portuguese',
'ro_RO': 'Romanian',
'ru_RU': 'Russian',
'sk_SK': 'Slovak',
'sl_SI': 'Slovenian',
'sv_SE': 'Swedish',
'tr_TR': 'Turkish',
'zh_CN': 'Chinese',
}
Run Code Online (Sandbox Code Playgroud)
我在 python 中发现的最丰富的语言环境支持是 babel。
请通过以下方式安装:
pip install babel
Run Code Online (Sandbox Code Playgroud)
然后,
import babel
all_ids = babel.localedata.locale_identifiers()
Run Code Online (Sandbox Code Playgroud)
还有对常用术语翻译等的广泛支持。 babel 正被用于各种其他软件包。
嗯,亚历克斯
| 归档时间: |
|
| 查看次数: |
19020 次 |
| 最近记录: |