I was just re-reading What’s New In Python 3.0 and it states:
The round() function rounding strategy and return type have changed. Exact halfway cas
Python 2 rounding behaviour in python 3.
Adding 1 at the 15th decimal places. Accuracy upto 15 digits.
round2=lambda x,y=None: round(x+1e-15,y)