最终,我正在尝试完成一个数字的计算,这个数字可以让我回到3位小数,并将其四舍五入到小数点后两位。我所拥有的是:
total = 175
tax = .0875
total += total * tax # giving me my desired total
print total
>>> 190.3125
rounded = round(total, 2) # giving me my desired decimal place
print rounded
>>> 190.31
我在考虑将total
和rounded
行合二为一,但它看起来很混乱......
我觉得这是最快的方式,但看起来并不像我想的那样:
total = round((total + (total*tax)), 2)
print total
>>> 190.31
修改
感谢各位评论中的输入。似乎时间显然不是要强调的事情。我将使用rounded = round(total, 2)
运行代码。再次感谢!
答案 0 :(得分:0)
我认为你应该首先考虑蟒蛇。圆形浮子的关键目的是什么?你需要使用这个圆形浮点数来计算,或者你想显示它吗?或者您想将其存储到具有一致格式的文件或数据库中?不同的目的导致不同的方法。
如果您想稍后使用此圆形浮点数进行计算,则不需要将其舍入。我们不应该在最终计算之前做任何额外的过程,因为它只会降低结果的精确度而没有任何好处。
如果要显示此舍入浮点数,可以将精度保持在变量内并使用字符串格式:print "%.2f" % total
。这也将打印出你想要的东西,但不会让你失去精确度。
如果你想将它存储到文件或数据库中,你可以转到rounded = round(total, 2)
,它真的是pythonic并且很有用。