如何以通常的方式在Python中编写用于舍入数字的函数。 小于.5的数字向下舍入,而.5及以上的数字向上舍入。
3.4 -> 3 11.9 -> 12 5.5 -> 6
答案 0 :(得分:7)
使用Python函数round()。如果您想自己动手,请添加0.5然后截断。
答案 1 :(得分:1)
def roundNumberAccordingly(number):
digits = str(number)
integer = 0
remainder = 0
seen_decimal = False
for i in range(len(digits)):
if digits[i] == '.':
seen_decimal = True
continue
elif not seen_decimal:
delta = int(digits[i]) * 10 ** (len(digits) - i - 1)
integer += delta
else:
delta = int(digits[i]) * 10 ** (len(digits) - i - 1)
remainder += delta
integer /= 10 ** (len(str(remainder)) + 1)
print integer
print remainder
first = str(remainder)[0]
if first in ('0', '1', '2', '3', '4'):
return integer
else:
return integer + 1
开玩笑;)