这个问题让我很难过.如何在Python中对数字进行综合?
我尝试了一些(数字),但它将数字向下舍入.例:
round(2.3) = 2.0 and not 3, what I would like
Run Code Online (Sandbox Code Playgroud)
我尝试了int(数字+ .5),但它再次将数字向下舍入!例:
int(2.3 + .5) = 2
Run Code Online (Sandbox Code Playgroud)
然后我尝试了一下(数字+ .5)但它在边缘情况下不起作用.例:
WAIT! THIS WORKED!
Run Code Online (Sandbox Code Playgroud)
请指教.
我已阅读以下页面:
python小数 - 使用ROUND_HALF_UP舍入到最接近的整数美元(无分钱)
http://docs.python.org/library/decimal.html
我有以下代码:
total_num = Decimal(str(total/10))
total_num.quantize(Decimal('1'), rounding=ROUND_UP)
Run Code Online (Sandbox Code Playgroud)
但它总是四舍五入?所以,如果我有221,我希望它返回23.现在我得到22.有什么我对此有误解吗?
[编辑]
我将其更改为以下内容: total_num = int(math.ceil(float(total)/10))
我需要一个int继续for循环有一个range.