在Python中,将输入从float向上或向下取整为int

在Python中,将输入从float向上或向下取整为int,python,Python,我正在寻找一种在python中对输入进行四舍五入(如果小数点为5或更高)和四舍五入(如果小数点为4或更低)的方法 作为一个例子,让它更清楚 请求用户输入: user_input = input("Please input a number: ") 然后,程序应检查输入值是f.e 2.5(在本例中,四舍五入为3)还是2.4(在本例中,四舍五入为2) 我该怎么做?我想让它工作,但我不知道如何 例如: user_input = input("Please input a

我正在寻找一种在python中对输入进行四舍五入(如果小数点为5或更高)和四舍五入(如果小数点为4或更低)的方法

作为一个例子,让它更清楚

请求用户输入:

user_input = input("Please input a number: ")
然后,程序应检查输入值是f.e 2.5(在本例中,四舍五入为3)还是2.4(在本例中,四舍五入为2)

我该怎么做?我想让它工作,但我不知道如何

例如:

user_input = input("Please input a number: ")

if user_input > 5:
    roundup
像这样的事情,我想你现在明白我的意思了。

Up:

import math
print(math.ceil(4.2))
向下:

像这样尝试(使用带有验证的
round()
):


稍后使用
user\u input

添加0.5,然后简单地向下取整。这是一个非常好的答案,我在寻找这个答案,但是如何检查输入浮点的小数?例如,我想检查输入的小数点是否高于5,使用math.ceil,如果是4或更低,则使用math.floor。你明白我的意思吗?我想这样做,如果用户输入第二个小数点>5,然后使用math.ceil(用户输入)else math.floor(用户输入)@MarekSczokowzky abs(math.floor(4.2)-4.2)
import math
print(math.floor(4.2))
while True:
    try:
      user_input = round(float(input("Please input a number: ")))
      break
    except ValueError:
      print("Enter a number please")

print(user_input)