用python将一个数字四舍五入

用python将一个数字四舍五入,python,thonny,Python,Thonny,我想知道,在不使用math.ceil函数的情况下,如何在python上对数字进行取整。我尝试使用条件“如果”,但它不起作用。 例如:4.01将变为5,4.0将保持为4。请问我们怎么做? 谢谢您可以尝试使用round()功能: a=2.22 第(a)轮#2 b=5.89 第(b)轮#6 检查这是否适用于1.0、2.0、3.0等,以确保0.5始终向下舍入 如果不是,则转换为整数,如果原始值更大,则添加一个。如果x%Int(x)==0,则可以检查数字是否为整数。如果是,则不执行任何操作,否则返回整数

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

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

a=2.22
第(a)轮#2
b=5.89
第(b)轮#6
检查这是否适用于1.0、2.0、3.0等,以确保0.5始终向下舍入


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

如果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

你能出示你的相关代码吗?到目前为止,无论你做了什么,你到底被困在哪里?
四舍五入(x+0.5)
x//1+(x%1>0)
链接副本中有大量答案不使用
数学。ceil
OP希望数字总是向上四舍五入,虽然您的示例清楚地显示了正常的舍入,但您也可以输入第二个参数来选择小数位数,如舍入(2.22,1)=2。2@Felipe这仍然不是OP要求的…@Filipe你是对的,我误解了这个问题。
rd = lambda x: int(x) if x%int(x) == 0 else int(x) + 1
#rd(4.1) = 5
#rd(4) = 4