Rounding a number to nearest even

bdsatish bdsatish at gmail.com
Fri Apr 11 06:14:15 EDT 2008


The built-in function round( ) will always "round up", that is 1.5 is
rounded to 2.0 and 2.5 is rounded to 3.0.

If I want to round to the nearest even, that is

my_round(1.5) = 2        # As expected
my_round(2.5) = 2        # Not 3, which is an odd num

I'm interested in rounding numbers of the form "x.5" depending upon
whether x is odd or even. Any idea about how to implement it ?



More information about the Python-list mailing list