python - 我在转换货币时收到错误 decimal.InvalidOperation
问题描述
当我尝试转换货币时收到错误消息:
decimal.InvalidOperation: [<class 'decimal.ConversionSyntax'>]
我的代码:
import decimal
decimal.Decimal("$1,234.00")
解决方案
尝试从适当的语言环境转换您的货币。如果是美元 ($),适当的语言环境是"USA"
:
import decimal
import locale
locale.setlocale(locale.LC_ALL, 'USA')
decimal.Decimal(locale.delocalize("$1,234.00").lstrip("$"))
如您所见,我还手动删除了“$”符号。
如果您不想处理本地化,您可以,
像这样删除逗号 ():
decimal.Decimal("$1,234.00".replace(",","").lstrip("$"))
推荐阅读
- c++ - 检测 `boost::math::tools::brent_find_minima()` 的错误输入
- java - JNA 加载失败,UnsatisfiedLinkError,“访问被拒绝”
- java - 百分比计算器在 Android Studio 中不起作用
- highcharts - 如何在高图表中舍入条形值
- android - 无法使用生命周期版本 2.2.0-alpha01 功能
- sql-server - SQL Server:如何打印打破每一行并超过 varchar(MAX) 的变量
- javascript - 如何在文档数组中找到等于或大于值的所有值
- mysql - MacBook Pro 上的 Mysql 损坏
- django - 返回 HttpResponse 后,上传的表单文件被删除
- azure - 从 JGit 克隆时出现“未授权”错误,使用 Git Bash