如何在python控制台中列出所有可用的windows语言?

问题描述 投票:27回答:3

在linux上,我们可以使用 locale -a 来查看可用的语言列表。

$ locale -a
C
C.UTF-8
en_US.utf8
POSIX 

能否从 python 控制台在 窗口?

当你想做的时候,这可以很方便。locale.setlocale(locale.LC_ALL, '???') 而根本不知道locale值的名字。

python locale
3个回答
28
投票
>>> import locale
>>> locale.locale_alias

9
投票

你可以在以下网站查询可用的locale名称 MSDN.

你必须将MSDN列表中 "语言字符串 "的长版本作为值传递给 setlocale. 默认的L10N短码如 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',
}

4
投票

我在python中发现最丰富的locale支持是babel。

请安装。

pip install babel

然后。

import babel
all_ids = babel.localedata.locale_identifiers()

babel还广泛支持常用术语翻译等,在其他各种软件包中也有使用。

hth,Alex

© www.soinside.com 2019 - 2024. All rights reserved.