我正在尝试在python中舍入整数。我看了内置的round()函数,但似乎舍入浮动了。
我的目标是将整数四舍五入到最接近的10的倍数。即: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函数:
>>> print round(1123.456789, -1) 1120.0
这将舍入到最接近的10的倍数。第二个参数为100,-2为-,依此类推。