我正在用python对整数进行取整。我看了一下内置的round()函数,但看起来rounds是浮动的。
我的目标是将整数舍入到10的最接近倍数。i、 e.:5->;10、4->;0、95->;100等
5和更高的应该向上取整,4和更低的应该向下取整。
这就是我的代码:
def round_int(x):
last_dig = int(str(x)[-1])
if last_dig >= 5:
x += 10
return (x/10) * 10
这是实现我想要的最好的方法吗?有没有一个内置的函数可以做到这一点?另外,如果这是最好的方法,那么我在测试中漏掉的代码有什么问题吗?
稍微简单一点:
round()可以取整数和负数作为小数点的左边。返回值仍然是一个浮点数,但是一个简单的强制转换修复了以下问题:
实际上,您仍然可以使用round函数:
这将是10的最接近倍数。第二个参数是-2,以此类推。
相关问题 更多 >
编程相关推荐