неправильное округление в Python с числами с плавающей запятой

>>> a = 0.3135
>>> print("%.3f" % a)
0.314
>>> a = 0.3125
>>> print("%.3f" % a)
0.312
>>>

Я ожидаю 0,313 вместо 0,312 Любая мысль о том, почему это, и есть ли альтернативный способ, которым я могу использовать, чтобы получить 0,313?

Спасибо

Ответы на вопрос(2)

Ваш ответ на вопрос