round(number, ndigits)
number
- округляемое число,ndigits
- число int
, количество знаков после запятой.ndigits
Функция round()
вернет число, округленное до точности ndigits
после десятичной точки. Если аргумент ndigits
опущен или None
, то вернет ближайшее целое число.
Функция round()
округляет значения до ближайшего кратного 10
к степени минус ndigits
. Если два кратных одинаково близки, округление производится в сторону чётного, например: round(0.5)
и round(-0.5)
будет 0
, a round(1.5)
будет равно 2
. Аргумент ndigits
принимает целочисленное значение (положительное, нулевое или отрицательное). Возвращаемое значение является целым числом, если второй аргумент ndigits=None
или не указан. В противном случае возвращаемое значение имеет тот же тип, что и число, переданное функции round()
в качестве округляемого.
Пользовательский тип данных может определить метод __round__()
, чтобы влиять на результат функции.
Заметка:
Поведение встроенной функции round()
для типа float может быть неожиданным: например, round(2.675, 2) вернёт 2.67 вместо ожидаемого 2.68. Это не ошибка: это результат того факта, что большинство десятичных дробей не может быть представлено в точности как число с плавающей точкой.
>>> round(5.76543) 6 >>> round(5.76543, 1) 5.8 >>> round(5.76543, 2) 5.77 >>> round(5.76543, 3) 5.765 >>> round(2.675, 2) 2.67