Jython:将文本解析为包含逗号的float
-
03-07-2019 - |
题
如何将从工作表扫描的浮动解析为包含逗号的文本?
txt = "1,903.44"
value = float(txt) # This fails due to ',' in string
更新:对不起,我不清楚。我正在使用jython 2.5,它没有语言环境模块。
解决方案
txt = "1,903.44"
value = float(txt.replace(',', ''))
如果你需要本地化,这不会真正起作用,但如果你知道逗号是你的分隔符就行了。
其他提示
在 locale.atof()
code> locale.setlocale(locale.LC_ALL,'')。
您可以删除逗号:
txt = txt.replace(',', '')
value = float(txt)
我会在处理货币值时亲自使用十进制包来避免记录良好的陷阱”。
from decimal import Decimal
txt = txt.replace (',', '')
value = Decimal(txt)
正如其他海报所指出的那样,只有当您的语言环境使用','作为千位分隔符时,这才有效,但应该让您朝着正确的方向前进。
不隶属于 StackOverflow