Как округлить число в Python

При работе со значениями с плавающей запятой (числа с дробной частью) в нашей программе на Python нам может понадобиться округлить число в большую или меньшую сторону или до ближайшего целого числа. В этой статье мы рассмотрим встроенные в Python функции, которые позволяют нам округлять числа, и разберем их работу на примерах.

Мы начнем с функции round(). По умолчанию она округляет исходное число до ближайшего целого числа. Мы также разберем, как использовать аргументы данной функции для изменения типа возвращаемого нам результата.

Хотите скачать книги по Python в 2 клика? Тогда вам в наш телеграм канал PythonBooks 

Затем мы поговорим о методах math.ceil() и math.floor(), которые округляют изначальное число в большую и меньшую сторону до ближайшего целого числа. Эти два метода входят во встроенный математический модуль math в Python.

[python_ad_block]

Как округлить число при помощи метода round()

Функция round() округляет число до указанного количества знаков после запятой. Если количество знаков не указано, функция округлит число до ближайшего целого.

Функция round() принимает два аргумента. Её синтаксис выглядит следующим образом:

round(number, decimal_digits)

Первый параметр — number (число) — это исходное число с дробной частью, которое мы хотим округлить.

Второй параметр — decimal_digits — это количество возвращаемых десятичных знаков. Значение по умолчанию — 0.

Давайте рассмотрим пару примеров.

x = 2.56789

print(round(x))
# 3

В нашем первом примере мы используем только один параметр — округляемое число number, равное 2,56789.

Когда мы передали числовую переменную в функцию round(), ее значение было округлено до ближайшего целого числа, то есть до 3.

Вот как легко работает данный метод!

Теперь давайте посмотрим, как работает второй параметр.

x = 2.56789

print(round(x, 2))
# 2.57

В этом коде мы добавили в функцию round() второй параметр. А именно — передали значение 2 в качестве параметра decimal_digits. В результате наша функция округлит число до сотых (два знака после запятой).

В выводе мы получим 2,57: исходное число 2,56789 округляется до двух знаков после запятой и получается 2,57.

Давайте рассмотрим ещё один пример, чтобы получше разобраться в работе второго параметра функции round().

x = 2.56789

print(round(x, 3))
# 2.568

Теперь мы передали в качестве второго параметра число 3 (decimal_digits = 3). В результате получим число, округленное до тысячных (три знака после запятой).

Первоначальное число 2,56789 было округлено до 2,568.

Вот и всё! Просто, не правда ли?

Как округлить число до ближайшего целого при помощи метода math.ceil()

Простой метод math.ceil() позволяет округлить число до целого в большую сторону. Метод принимает только один аргумент — округляемое число. Синтаксис выглядит следующим образом:

math.ceil(number)

К примеру, мы можем использовать ceil() вот так:

import math

x = 5.57468465

print(math.ceil(x))
# 6

Скорее всего, вы заметили, что в приведенном выше коде мы сначала импортировали математический модуль с помощью команды import math. Это дает нам доступ ко всем методам, предоставляемым данным модулем.

Далее мы создали переменную x и присвоили ей значение 5,57468465.

Чтобы округлить исходное число х до ближайшего целого числа, мы передали его методу math.ceil().

Результирующее значение этой операции, как видно из приведенного выше кода, равно 6.

Таким образом, функция ceil() является некой упрощенной версией round(): она просто округляет исходное значение в большую сторону.

Как округлить число до ближайшего целого при помощи метода math.floor()

Метод floor() в некотором смысле обратный методу ceil(): он тоже округляет число до целого, но в меньшую сторону.

Как и в предыдущем примере, чтобы использовать метод math.floor(), мы должны сначала импортировать математический модуль с помощью команды import math.

Вот так выглядит синтаксис метода math.floor():

math.floor(number)

Данный метод точно так же принимает лишь один аргумент — исходное число, которое нужно округлить. Однако floor() округляет до целого числа в меньшую сторону. Давайте рассмотрим следующий пример:

import math

x = 5.57468465

print(math.floor(x))
# 5

Мы передали методу math.floor() переменную x, в которой хранится число 5,57468465. В результате это число было округлено до 5.

Заключение

Итак, в этой статье мы разобрали, как округлить число в Python. Мы рассказали о трех встроенных в Python функциях, которые позволяют округлять числа.

Первой была функция round(). Она округляет число до ближайшего целого числа. При этом данная функция также принимает и второй параметр, с помощью которого можно указать, до какого знака после запятой нужно округлить число.

Следующий метод — math.ceil() — округляет число до ближайшего целого числа в большую сторону. Третий метод — math.floor() — тоже округляет число до ближайшего целого, но уже в меньшую сторону. Эти два метода доступны при работе с математическим модулем math. Документацию по модулю math можете посмотреть здесь.

Надеемся данная статья была вам полезна! Успехов в написании кода!

Перевод статьи «Python Round to Int – How to Round Up or Round Down to the Nearest Whole Number».