我如何用Python编写一个取整数字的函数?

2021-12-08 04:34:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我怎样才能用Python编写一个函数来舍入一个数呢。 小于.5的数字向下取整,大于.5的数字向上取整。在

3.4 -> 3

11.9 -> 12

5.5 -> 6
2条回答
网友
1楼 ·

使用Python函数round()。如果你想自己做,加0.5,然后截断。在

网友
2楼 ·
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

开玩笑;)

相关问题