【发布时间】:2019-06-13 15:58:25
【问题描述】:
我想截断小数点后第三位的浮点数。但是,我不想四舍五入。
float("{0:.3f}".format(132.32579))
上面的代码生成 132.326,但我希望它生成 132.325。任何帮助表示赞赏
【问题讨论】:
标签: python truncation
我想截断小数点后第三位的浮点数。但是,我不想四舍五入。
float("{0:.3f}".format(132.32579))
上面的代码生成 132.326,但我希望它生成 132.325。任何帮助表示赞赏
【问题讨论】:
标签: python truncation
您可以再四舍五入到 1 位,将字符串切片以忽略最后一位数字并转换回浮点数:
print( float("{0:.4f}".format(132.32579) [:-1]))
您可以通过乘以 1000、转换为 int 并再次除以 1000.0 来避免字符串转换/舍入:
print( float(int(132.32579*1000)/1000.0))
输出(两者):
132.325
【讨论】: