Функция round() в Python возвращает число с плавающей запятой, округленное до указанного количества десятичных знаков.
- Синтаксис
- Параметры
- Возвращаемое значение
- Пример 1: как использовать функцию round()
- Пример 2: передача аргумента ndigits
- Пример 3: метод round() с отрицательными целыми числами
- Пример 4: как округлить число до заданного количества десятичных знаков
- Пример 5: округление чисел с помощью математической библиотеки в Python
- Пример 6: с помощью модуля Numpy в Python
- Пример 7: округление чисел в Python
- Пример 8: округление в меньшую сторону в Python
- Ошибка и исключения
Синтаксис
|
1 2 |
round(number, digits) |
Параметры
- number: это число, которое необходимо округлить.
- ndigits(необязательно): это число, до которого нужно округлить данное число.
Возвращаемое значение
Функция round() возвращает ближайшее целое число к заданному числу, если ndigits не указано. Число округляется до ndigits, если ndigits указано.
Пример 1: как использовать функцию round()
|
1 2 3 4 5 6 7 8 9 |
# for integers print(round(21)) # for floating point print(round(21.9)) # even choice print(round(21.4)) |
Выход

Пример 2: передача аргумента ndigits
Чтобы округлить число до заданных n цифр, используйте функцию round() и передайте аргумент ndigits.
|
1 2 3 |
print(round(21.1919, 2)) print(round(21.184646, 3)) |
В приведенном выше примере мы передали второй аргумент, который зависит от того, сколько цифр вам нужно округлить. Первый пример — 2; во втором — 3. Лучшее использование функций — обработка несоответствия дробей и десятичных знаков.
Пример 3: метод round() с отрицательными целыми числами
Вы можете передать отрицательные целые числа в функцию round().
|
1 2 3 4 5 6 |
print(round(-2.1)) print(round(-1.9)) print(round(-10.0)) print(round(-3.775, 2)) print(round(-1234, -2)) |
Выход
|
1 2 3 4 5 6 |
-2 -2 -10 -3.77 -1200 |
Пример 4: как округлить число до заданного количества десятичных знаков
Если вы находитесь в ситуации, когда необходима такая точность, рассмотрите возможность использования decimal модуля, который предназначен для арифметических операций с плавающей запятой.
|
1 2 3 4 5 6 7 8 9 10 |
from decimal import Decimal # normal float num = 3.775 print(round(num, 2)) # using decimal.Decimal(passed float as string for precision) num = Decimal('3.374') print(round(num, 2)) |
Выход
|
1 2 |
3.77 3.37 |
Пример 5: округление чисел с помощью математической библиотеки в Python
Функция round() округляет число до ближайшего целого числа. Вы также можете указать, нужно ли округлять в большую или меньшую сторону, используя функцию round() в сочетании с math-модулем.
|
1 2 3 4 5 6 7 8 9 |
import math num = 4.6 rounded_number = math.floor(num) print(rounded_number) rounded_number = math.ceil(num) print(rounded_number) |
Выход
|
1 2 |
4 5 |
Пример 6: с помощью модуля Numpy в Python
|
1 2 3 4 5 6 |
import numpy as np arr = np.array([-1.775, -2.123456789, -3.14159265]) rounded_arr = np.round(arr, decimals=3) print(rounded_arr) |
Выход
|
1 2 |
[-1.775 -2.123 -3.142] |
Пример 7: округление чисел в Python
|
1 2 3 4 |
print(round(21)) print(round(21.7)) |
Выход
|
1 2 3 |
21 22 |
Пример 8: округление в меньшую сторону в Python
|
1 2 3 4 5 6 7 |
print(round(21)) print(round(21.1)) print(round(21.4)) print(round(21.9)) |
Выход
|
1 2 3 4 |
21 21 21 22 |
Ошибка и исключения
TypeError возникает, когда в параметрах есть что-то кроме чисел.
|
1 |
print(round("k", 2)) |
Выход
|
1 |
TypeError: type str doesn't define __round__ method |
