如何用任何小数舍入一个值

时间:2014-06-04 21:03:25

标签: python python-3.x decimal rounding python-3.3

我想让值总是向上舍入,无论它是什么,例如:

Strength = 16.33333

我会用它做什么(无论它等于什么)围绕下一个整数?

4 个答案:

答案 0 :(得分:10)

只需使用ceil功能:

>>> import math
>>> a = math.ceil(16.33333)
>>> a
17
>>> a = math.ceil(17)
>>> a
17

答案 1 :(得分:1)

另一种方法:

a if a.is_integer() else int(a)+1

答案 2 :(得分:0)

嘿,我之前回答过这个问题,但这并没有太大帮助。今天我意识到你仍然可以在不导入数学的情况下将整数/浮点数舍入到下一个数字。就这样做。

round(number+0.5)

无论你输入的是什么,即使它是一个整数或一个浮点数,它总是会向下舍入到下一个数字。

如果可以避免使用,我通常不喜欢使用导入!使用math.ceil()方法向上舍入整数的另一种方法。希望这有帮助!

答案 3 :(得分:0)

def round_up(number_):
    rounded = int(number_) if round(number_) == number_ else int(number_)+1
    return rounded