Python中的操作系统区域设置支持
以下的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的地区设置和Debian的地区设置对应起来?
4 个回答
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个地区名称。)
9
尝试一下
apt-get install locales-all
对我来说,这个方法效果很好
22