Python以美元金额删除逗号

The*_*Woo 13 python string

使用Python v2,我让用户在字符串中输入金额,如下所示:

RawPurchaseAmount = raw_input("Please enter purchase amount: ")

PurchaseAmount = float(RawPurchaseAmount.strip().lstrip("$"))
Run Code Online (Sandbox Code Playgroud)

这将删除输入前面的任何空白区域,如果输入了$符号,则删除$符号.

如果输入逗号符号,有没有办法删除它?IE:$ 10,000.00变为10000.00

谢谢你的帮助.

NPE*_*NPE 31

您可以使用replace删除所有逗号:

"10,000.00".replace(",", "")


Ste*_*ger 20

>>> import re
>>> re.sub("[^\d\.]", "", "$1,000,000.01")
'1000000.01'
Run Code Online (Sandbox Code Playgroud)

正则表达式模式表示"任何不是数字或小数点的东西".匹配该正则表达式的任何内容都将替换为"".

您可能需要记住一些欧洲国家使用.作为千分隔符,作为小数点.

所以"100万欧元和5美分"可能是€1.000.000,05或€1,000,000.05

  • 我比自己的答案更喜欢这个.更准确的.+1. (2认同)
  • 这消除了负面信号。 (2认同)