0

我想知道我们如何在不使用 math.ceil 函数的情况下在 python 上对数字进行四舍五入。我尝试使用条件“如果”,但它不起作用。例如:4.01 将变为 5,而 4.0 将保留 4。请问我们该怎么做?谢谢

4

3 回答 3

4
round(x + 0.5)

检查这是否适用于 1.0、2.0、3.0 等,以确保 0.5 始终向下舍入。

如果不是,则转换为 Int,如果原始值更大,则添加一个。

于 2021-02-03T13:52:15.880 回答
1

您可以尝试使用该round()功能:

a =2.22
round(a) # 2

b = 5.89
round(b) # 6
 
于 2021-02-03T13:47:01.967 回答
1

如果 x%int(x) == 0,您可以检查该数字是否为整数。如果是,则不执行任何操作,否则返回整数加 1:

rd = lambda x: int(x) if x%int(x) == 0 else int(x) + 1
#rd(4.1) = 5
#rd(4) = 4
于 2021-02-03T13:57:13.560 回答