Python 3.3.2 - 在保持小数的同时舍入到数字

时间:2013-08-25 01:24:39

标签: python python-3.x rounding

我知道这个问题听起来有点奇怪,我想不出解释它的方法。

基本上,我需要对数字进行舍入而不会切断额外的零等。例如,当我希望它转到format(round(whatever, 3))时,我当前的1.00000024会将1.0改为1.000。我知道这种做法的实用性是愚蠢的,但我需要做到这一点,以免在人们获得的数字长度不同时混淆人们。

请帮帮忙?

1 个答案:

答案 0 :(得分:5)

小数点后显示的位数不是表示数字的float的属性 - 它是显示它的方式的属性。内置的formatstring format method可以使用format spec来控制数字的显示方式:

print('{:.3f}'.format(1.0))  # prints 1.000

请参阅有关如何使用格式规范的链接 - 有很多选项,它们会让人感到困惑。