gpt4 book ai didi

python - 如何在 python 中使用西类牙语千分组格式化数字?

转载 作者:行者123 更新时间:2023-11-28 21:49:03 25 4
gpt4 key购买 nike

我需要用西类牙语千位分隔符(点而不是逗号)格式化数字。使用语言环境,我可以获得英语的分隔符:

>>> import locale
>>> locale.setlocale(locale.LC_ALL, 'en_US')
'en_US'
>>> print(locale.format("%d", 10000000, grouping=True))
10,000,000

但是,如果我尝试获取西类牙语分隔符,它不起作用:

>>> locale.setlocale(locale.LC_ALL, 'es_ES')
'es_ES'
>>> print(locale.format("%d", 10000000, grouping=True))
10000000

关于如何获得预期结果的任何想法? (10.000.000)。我正在使用 python 3.4。

最佳答案

我认为 es_ES 数字格式不包含千位分隔符。但是,货币格式确实如此:

In [16]: locale.setlocale(locale.LC_ALL, 'es_ES')
In [17]: print(locale.format('%d', 10000000, grouping=True, monetary=True))
10.000.000

您可以通过调用 locale.localeconv() 获取更多信息:

In [18]: locale.localeconv()
Out[18]:
{'currency_symbol': 'Eu',
'decimal_point': ',',
'frac_digits': 2,
'grouping': [127],
'int_curr_symbol': 'EUR ',
'int_frac_digits': 2,
'mon_decimal_point': ',',
'mon_grouping': [3, 3, 0],
'mon_thousands_sep': '.', # <----- NB
'n_cs_precedes': 0,
'n_sep_by_space': 1,
'n_sign_posn': 1,
'negative_sign': '-',
'p_cs_precedes': 0,
'p_sep_by_space': 1,
'p_sign_posn': 1,
'positive_sign': '',
'thousands_sep': ''} # <----- NB

关于python - 如何在 python 中使用西类牙语千分组格式化数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34147025/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com