我收到一个错误的小数.转换货币时的InvalidOperation



当我尝试转换货币时收到一个错误:

decimal.InvalidOperation: [<class 'decimal.ConversionSyntax'>]

我代码:

import decimal
decimal.Decimal("$1,234.00")

尝试从适当的区域设置转换您的货币。对于USD($),适当的区域设置是"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("$"))