相关疑难解决方法(0)

在Python中将货币分解为数字

我刚刚从Python格式中学习了Python中的货币, Python模块babel提供了babel.numbers.format_currency将数字格式化为货币.例如,

from babel.numbers import format_currency

s = format_currency(123456.789, 'USD', locale='en_US')  # u'$123,456.79'
s = format_currency(123456.789, 'EUR', locale='fr_FR')  # u'123\xa0456,79\xa0\u20ac'
Run Code Online (Sandbox Code Playgroud)

反过来,从货币到数字,如$123,456,789.00- > 123456789babel提供babel.numbers.parse_number解析本地数字,但我没有找到类似的东西parse_currency.那么,将本地货币解析为数字的理想方法是什么?


我经历了Python:除了字符串中的数字之外的字符.

# Way 1
import string
all=string.maketrans('','')
nodigs=all.translate(all, string.digits)

s = '$123,456.79'
n = s.translate(all, nodigs)    # 12345679, lost `.`

# Way 2
import re
n = re.sub("\D", "", s)         # 12345679
Run Code Online (Sandbox Code Playgroud)

它不关心小数分隔符..


.从字符串中删除除(,参见 …

python numbers currency-formatting

7
推荐指数
2
解决办法
3719
查看次数

标签 统计

currency-formatting ×1

numbers ×1

python ×1