Linuxでは、_locale -a
_を使用して、利用可能なロケールのリストを表示できます。
_$ locale -a
C
C.UTF-8
en_US.utf8
POSIX
_
python console on windowsから同じことを行うことは可能ですか?
これは、locale.setlocale(locale.LC_ALL, '???')
を実行しようとして、ロケール値の名前がわからない場合に便利です。
>>> import locale
>>> locale.locale_alias
[〜#〜] msdn [〜#〜] で利用可能なロケール名を検索できます。
MSDNリストの "Language string"から長いバージョンを値としてsetlocale
に渡す必要があります。 en_EN
にあるlocale_alias
のようなデフォルトのL10Nショートコードは、一般的に機能しません。
私はそれらのいくつかを辞書としてすでに抽出しています:
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',
}
pythonで見つかった最も豊富なロケールのサポートはbabelです。
インストールしてください:
pip install babel
その後、
import babel
all_ids = babel.localedata.locale_identifiers()
一般的な用語の翻訳などの広範なサポートもあります。他のさまざまなパッケージでbabelが使用されています。
hth、アレックス