OS语言环境支持在Python中使用

时间:2009-08-11 12:12:19

标签: python locale

以下Python代码适用于我的Windows机器(Python 2.5.4),但不适用于我的Debian机器(Python 2.5.0)。我猜这是依赖操作系统的。

import locale
locale.setlocale( locale.LC_ALL, 'English_United States.1252' )

我收到以下错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.5/locale.py", line 476, in setlocale
    return _setlocale(category, locale)
locale.Error: unsupported locale setting

问题:

  • 操作系统是否依赖?
  • 如何找到支持的区域设置 Python中的列表?
  • 如何在Windows之间进行匹配 locales和Debian语言环境?

4 个答案:

答案 0 :(得分:21)

它取决于操作系统。

要获取本地可用列表,您可以在shell中使用locale -a

我认为你想要的本地就像Windows-1252

答案 1 :(得分:9)

apt-get install locales-all

对我而言,它就像一个魅力

答案 2 :(得分:8)

查看locale.locale_alias词典。

>>> import locale
>>> len(locale.locale_alias)
789
>>> locale.locale_alias.keys()[:5]
['ko_kr.euc', 'is_is', 'ja_jp.mscode', 'kw_gb@euro', 'yi_us.cp1255']
>>> 

(在我的2.6.2安装中有789个区域设置名称。)

答案 3 :(得分:1)

在Ubuntu Precise类型

sudo locale-gen en_US