【发布时间】:2013-08-11 13:05:48
【问题描述】:
我进行了研究并进行了一些改进,非常接近解决此问题,但现在我陷入困境并需要帮助。
任务:将字符串浮点数列表转换为带 2 个小数点的浮点数
原名单:
mylist = ['17.21', '33.40', '24.39', '3.48', '1.02', '0.61', '18.03', '1.84']
目标
mylist = [17.21, 33.40, 24.39, 3.48, 1.02, 0.61, 18.03, 1.84]
我的脚本尝试
mylisttwo = map(float, mylist)
它给了我这个
[17.21, 33.4, 24.39, 3.48, 1.02, 0.60999999999999999, 18.03, 1.84]
然后我想到了id格式化
floatlist = []
for item in mylisttwo:
floatlist.append("{0:.2f}".format(item))
但这又给了我一个字符串浮动列表!!啊啊啊
['17.21', '33.40', '24.39', '3.48', '1.02', '0.61', '18.03', '1.84']
我在这里做错了什么?
谢谢
【问题讨论】:
-
如果您希望它们作为浮点数并打算用它们进行计算,我不会费心将它们四舍五入到小数点后 2 位,直到您需要显示它们。
-
你为什么在乎? (严肃的问题。)
0.60999999999999999是否足以满足您的目的?如果没有,为什么不呢?
标签: python list floating-point decimal