我有一些字符串表示特定货币格式的数字,例如:
I have some strings representing numbers with specific currency format, for example:
money="$6,150,593.22"
我想把这个字符串转换成数字
I want to convert this string into the number
6150593.22
实现这一目标的最佳方法是什么?
What is the best way to achieve this?
试试这个:
from re import sub
from decimal import Decimal
money = '$6,150,593.22'
value = Decimal(sub(r'[^d.]', '', money))
这有一些优点,因为它使用 Decimal 而不是 float(更适合表示货币)并且它还通过不对特定货币符号进行硬编码来避免任何语言环境问题.
This has some advantages since it uses Decimal instead of float (which is better for representing currency) and it also avoids any locale issues by not hard-coding a specific currency symbol.
这篇关于如何在 Python 中将货币字符串转换为浮点数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
在 Pandas 中解析多索引 Excel 文件Parsing a Multi-Index Excel File in Pandas(在 Pandas 中解析多索引 Excel 文件)
pandas 时间序列 between_datetime 函数?pandas timeseries between_datetime function?( pandas 时间序列 between_datetime 函数?)
pandas 重新采样到每月的特定工作日pandas resample to specific weekday in month( pandas 重新采样到每月的特定工作日)
在 Pandas 中合并/组合两个具有不同频率时间序列Merging/combining two dataframes with different frequency time series indexes in Pandas?(在 Pandas 中合并/组合两个具有不同频率时间序列索
Python - 如何标准化时间序列数据Python - how to normalize time-series data(Python - 如何标准化时间序列数据)
statsmodels 使用 ARMA 模型进行预测statsmodels forecasting using ARMA model(statsmodels 使用 ARMA 模型进行预测)