小编Ter*_*ell的帖子

使用 quantize 舍入小数与内置舍入函数有什么区别?

当使用 python 中的内置十进制模块时,我可以按如下方式四舍五入小数。

Decimal(50.212345).quantize(Decimal('0.01'))
> Decimal('50.21')
Run Code Online (Sandbox Code Playgroud)

但我也可以使用内置的舍入函数对相同的数字进行舍入

round(Decimal(50.212345), 2)
> Decimal('50.21')
Run Code Online (Sandbox Code Playgroud)

在对小数进行四舍五入时,为什么要使用其中之一而不是另一个?在之前关于小数舍入的答案中,用户建议使用 quantize,因为内置的 round 函数将返回 float 类型的值。根据我的测试,它们都返回十进制。除了语法之外,还有选择其中之一的理由吗?

python floating-point decimal rounding python-3.x

9
推荐指数
1
解决办法
1431
查看次数

标签 统计

decimal ×1

floating-point ×1

python ×1

python-3.x ×1

rounding ×1