【发布时间】:2019-08-30 19:25:55
【问题描述】:
我想用逗号将元组值转换为 python 中的字符串。 Ex Input: 3,500.60 and output should be 3,500.6(string type)
value=3,500.60
s=str(value)
这会返回 (3, 500.6)
但我想要 3,500.6
有可能吗?
【问题讨论】:
-
你正在解析一个元组,它不是一个浮点数。去掉逗号
-
Python 中没有“带逗号的浮点值”这样的东西。
3,500.6是一个元组,由整数3和浮点数500.6组成。 -
3,500.60 不是浮点数。它是数字 3 和 500.60 的元组。您不能将逗号用作数字文字的千位分隔符。不过,如果需要,您可以使用下划线:
3_500.6等于3500.6。 -
当你在做
value=3,500.60时,你的值等于一个包含3和500.6元素的元组。 -
如果这个值应该代表货币,我强烈建议不要使用浮点数来存储它。浮点数不能准确地表示小数点后有两个值的许多数字。例如,浮点数 3500.6 在内部存储为
3500.59999999999990905052982270717620849609375,如果您稍后尝试使用它进行算术运算,这种不精确性可能会导致错误。考虑将您的货币存储为整数美分,或者使用decimal.Decimal。
标签: python string python-2.7