【发布时间】:2010-10-14 17:07:37
【问题描述】:
我正在尝试使用Decimal.quantize() 来实现以下目标:-
对于任何金额,表示为默认精度的python小数,我想使用decimal.ROUND_HALF_UP对其进行四舍五入,这样四舍五入后就没有美分了。
例如,给定 1.25,我试图获得 1.00(表示没有美分)
给定 1.49 我试图获得 1.00
给定 1.50 我试图获得 2.00
给定 1.87 我试图获得 2.00
给定 2.00 我试图获得 2.00
所以美分有两个范围 - 0 美分到 49 美分;和 50 美分到 99 美分。对于高达 49 的美分,我想四舍五入,对于 50 美分及以上的美分,我想四舍五入。我试图获得具有两个有效小数位的结果(始终为 00)。
我在这里没有任何负值要处理。如何四舍五入我的美元以获得我想要的金额?除了quantize,还有其他选择吗?
【问题讨论】: