我正在尝试在 Python 中截断十进制值。我不想四舍五入,而是只显示达到指定精度的十进制值。我尝试了以下方法:
d = 0.989434
'{:.{prec}f}'.format(d, prec=2)
这会将其四舍五入为 0.99。但我实际上希望输出为 0.98。显然,round()
不是一个选项。有没有办法做到这一点?还是我应该回到代码并将所有内容更改为 decimal
?
谢谢。
最佳答案
您可以使用以下代码
import decimal
d = 0.989434
print decimal.Decimal(d).quantize(decimal.Decimal('.01'), rounding=decimal.ROUND_DOWN)
https://stackoverflow.com/questions/20544714/