在Python中将数字格式化为货币

星火闪闪

我从Python中的货币格式化学习,使用语言环境模块将数字格式化为货币。例如,

#! /usr/bin/env python
# -*- coding: utf-8 -*-

import locale

value = 123456789

l = locale.setlocale(locale.LC_ALL, '')     # LC_CTYPE=en_US.UTF-8;LC_NUMERIC=fr_FR.UTF-8;LC_TIME=fr_FR.UTF-8;LC_COLLATE=en_US.UTF-8;LC_MONETARY=fr_FR.UTF-8;LC_MESSAGES=en_US.UTF-8;LC_PAPER=fr_FR.UTF-8;LC_NAME=fr_FR.UTF-8;LC_ADDRESS=fr_FR.UTF-8;LC_TELEPHONE=fr_FR.UTF-8;LC_MEASUREMENT=fr_FR.UTF-8;LC_IDENTIFICATION=fr_FR.UTF-8
s = locale.currency(value, grouping=True)   # 123 456 789,00 €

locale.setlocale(locale.LC_ALL, 'en_US.utf-8') 
s = locale.currency(value, grouping=True)   # $123,456,789.00

locale.setlocale(locale.LC_ALL, 'en_US')    # WHY? locale.Error: unsupported locale setting
s = locale.currency(value, grouping=True)

我想将数字格式化为其他货币de_DElocale.Error: unsupported locale setting由于语言环境de_DE不在的列表中,因此我遇到了问题locale -a

locale.setlocale(locale.LC_ALL, 'de_DE')        # locale.Error: unsupported locale setting
s = locale.currency(value, grouping=True)

一种解决方案是将该语言环境添加到我的机器上。有没有更好的办法?

帕德拉克·坎宁安(Padraic Cunningham)

babel.numbers

In [22]: from babel.numbers import format_decimal
In [23]:  format_decimal(12345, locale='de_DE')
Out[23]: u'12.345'

In [24]: format_decimal(1.2345, locale='sv_SE')
Out[24]: u'1,234'

或者在您的情况下format_currency

In [7]: from babel.numbers import format_currency

In [8]: print format_currency(1099.98, 'USD', locale='en_US')
$1,099.98

In [9]: print format_currency(1099.98, 'USD', locale='es_CO')
1.099,98 US$

In [10]: print format_currency(1099.98, 'EUR', locale='de_DE')
1.099,98 €

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在python中将数字或字符串格式化为货币

将数字格式化为货币android

将数字格式化为货币金额

在Python中将数字格式化为字符串

在python中将长数字格式化为字符串

在Swift中将负Double格式化为货币

将数字格式化为dplyr中的货币?

如何将ClosedXML中的货币格式化为数字

Python-将数字列表中的项目格式化为带有货币符号的字符串

在Flutter中将数字格式化为字符串

无法在Kotlin中将给定对象格式化为数字

如何在Moment中将数字格式化为时间?

如何在JasperSoft Studio中将数字格式化为2.564.894.621?

如何在Flutter中将数字格式化为指数形式

在jasper报告中将字符串格式化为货币格式

在ReportViewer中将文本框的表达式格式化为货币格式

在公式中格式化为货币

将bin标签格式化为货币

如何在饼图chartJS中将工具提示格式化为货币?

在列表框问题中将变量格式化为货币

将数字数组格式化为货币,值之间的最小宽度

当用户在 Javascript 中键入时,如何将数字格式化为货币

如何将数字格式化为货币字符串?

如何将数字格式化为货币字符串

使用React native EXPO时如何将数字格式化为货币?

如何编写 sql 查询以输出格式化为包含本地货币符号并格式化为 5 位数字后跟两个小数位的价格?

将费用格式化为本地货币格式SQL

如何在xsl中将数字格式化为日期时间格式?

在 js 中格式化货币的数字