Round number to nearest integer

前端 未结 11 2135
傲寒
傲寒 2020-11-27 12:32

I\'ve been trying to round long float numbers like:

32.268907563;
32.268907563;
31.2396694215;
33.6206896552;
...

With no success so far. I

11条回答
  •  无人及你
    2020-11-27 13:05

    Some thing like this should also work

    import numpy as np    
    
    def proper_round(a):
        '''
        given any real number 'a' returns an integer closest to 'a'
        '''
        a_ceil = np.ceil(a)
        a_floor = np.floor(a)
        if np.abs(a_ceil - a) < np.abs(a_floor - a):
            return int(a_ceil)
        else:
            return int(a_floor)
    

提交回复
热议问题