Python Разработка | Web Backend, Парсинг & Telegram Bots. Пайтон программирование с нуля. Django, FastAPI и SQL. Уроки для начинающих и IT карьера. Coding.
Образование · 8 мая 2026 г.
Функция round округляет число до заданной точности в десятичных знаках. — 8 мая 2026 г. в 09:42:23.790
Функция round округляет число до заданной точности в десятичных знаках. >>> round(1.2) 1 >>> round(1.8) 2 >>> round(1.228, 1) 1.2 Также можно задать отрицательную точность: >>> round(413.77, -1) 410.0 >>> round(413.77, -2) 400.0 round возвращает значение того же типа, что и входное число: >>> type(round(2, 1)) <class 'int'> >>> type(round(2.0, 1)) <class 'float'> >>> type(round(Decimal(2), 1)) <class 'decimal.Decimal'> >>> type(round(Fraction(2), 1)) <class 'fractions.Fraction'> Для собственных классов можно определить поведение округления с помощью метода __round__: >>> class Number(int): ... def __round__(self, p=-1000): ... return p ... >>> round(Number(2)) -1000 >>> round(Number(2), -2) -2 Значения округляются до ближайшего кратного 10 ** (-precision). Например, при precision=1, значение округляется до кратного 0.1: round(0.63, 1) возвращает 0.6. Если два значения одинаково близки, округление происходит в сторону чётного числа: >>> round(0.5) 0 >>> round(1.5) 2 Иногда округление чисел с плавающей точкой может казаться неожиданным: >>> round(2.85, 1) 2.9 Это связано с тем, что большинство десятичных дробей не могут быть точно представлены в формате float: >>> format(2.85, '.64f') '2.8500000000000000888178419700125232338905334472656250000000000000' Если нужно округление "в большую сторону при 0.5" (round half up), можно использовать decimal.Decimal: >>> from decimal import Decimal, ROUND_HALF_UP >>> Decimal(1.5).quantize(0, ROUND_HALF_UP) Decimal('2') >>> Decimal(2.85).quantize(Decimal('1.0'), ROUND_HALF_UP) Decimal('2.9') >>> Decimal(2.84).quantize(Decimal('1.0'), ROUND_HALF_UP) Decimal('2.8') 👉 @BookPython

