python setlocale不工作

python setlocale不工作,python,setlocale,Python,Setlocale,我无法使setlocale工作。hr_hr应该将逗号识别为十进制除名器,而不是。我错过了什么?我使用的是Ubuntu 14.10和python 2.7 >>> import locale >>> float("3.2") 3.2 >>> float("3,2") Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueE

我无法使setlocale工作。hr_hr应该将逗号识别为十进制除名器,而不是。我错过了什么?我使用的是Ubuntu 14.10和python 2.7

>>> import locale
>>> float("3.2")
3.2
>>> float("3,2")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for float(): 3,2
>>> locale.setlocale(locale.LC_NUMERIC, 'hr_HR.utf8')
'hr_HR.utf8'
>>> float("3.2")
3.2
>>> float("3,2")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for float(): 3,2
>>> locale.setlocale(locale.LC_ALL, 'hr_HR.utf8')
'hr_HR.utf8'
>>> float("3.2")
3.2
>>> float("3,2")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for float(): 3,2
>>> 
导入区域设置 >>>浮动(“3.2”) 3.2 >>>浮动(“3,2”) 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 ValueError:浮点()的文本无效:3,2 >>>setlocale(locale.LC\u数值'hr\u hr.utf8') ‘hr_hr.utf8’ >>>浮动(“3.2”) 3.2 >>>浮动(“3,2”) 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 ValueError:浮点()的文本无效:3,2 >>>setlocale(locale.LC_ALL'hr_hr.utf8') ‘hr_hr.utf8’ >>>浮动(“3.2”) 3.2 >>>浮动(“3,2”) 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 ValueError:浮点()的文本无效:3,2 >>>
您似乎想要
locale.atof(string)
功能。 从文件中:

locale.atof(字符串)

按照LC_数字设置将字符串转换为浮点数

从文档中可以看出,setlocal并没有改变内置程序的工作方式,而是提供了一个不同的函数来完成类似的工作