В Python существует несколько методов округления чисел до ближайшего целого числа. Независимо от того, работаете ли вы с числами с плавающей запятой или вам необходимо выполнить определенные операции округления, эта статья познакомит вас с различными методами и предоставит примеры кода, которые помогут вам добиться точных результатов. Давайте погрузимся!
Метод 1: функция Round()
Самым простым и наиболее часто используемым методом является встроенная функция round(). Он округляет число до ближайшего целого числа и возвращает значение с плавающей запятой. Вот пример:
num = 3.7
rounded_num = round(num)
print(rounded_num) # Output: 4
Метод 2: функция int()
Если вы хотите получить ближайшее целое число без десятичных знаков, вы можете использовать функцию int(). Он усекает десятичную часть числа с плавающей запятой и возвращает целое число. Вот пример:
num = 5.9
closest_integer = int(num)
print(closest_integer) # Output: 5
Метод 3: функции math.ceil() и math.floor()
Функция math.ceil()округляет число до ближайшего целого числа, а функция math.floor()функция округляет его в меньшую сторону. Эти функции являются частью модуля math. Вот примеры:
import math
num = 2.3
ceiling_num = math.ceil(num)
floor_num = math.floor(num)
print(ceiling_num) # Output: 3
print(floor_num) # Output: 2
Метод 4: функция numpy.rint()
Если вы работаете с массивами или вам необходимо выполнить поэлементное округление, библиотека numpyпредоставляет rint()функция. Он округляет каждый элемент массива до ближайшего целого числа. Вот пример:
import numpy as np
arr = np.array([1.5, 2.7, 3.9])
rounded_arr = np.rint(arr)
print(rounded_arr) # Output: [2. 3. 4.]
Метод 5: функция math.trunc()
Подобно функции int(), функция math.trunc()удаляет десятичную часть числа и возвращает усеченное целое число.. Вот пример:
import math
num = -4.6
truncated_num = math.trunc(num)
print(truncated_num) # Output: -4
Метод 6: пользовательская функция с арифметическими операциями
Если вы предпочитаете собственный подход, вы можете использовать арифметические операции для округления числа до ближайшего целого числа. Вот пример:
num = 6.2
rounded_num = num + 0.5 if num >= 0 else num - 0.5
rounded_num = int(rounded_num)
print(rounded_num) # Output: 6
Метод 7: форматирование с помощью f-строк.
Другой способ округления числа до ближайшего целого числа — использование форматирования строки с помощью f-строк. Вот пример:
num = 8.4
rounded_num = f"{num:.0f}"
print(rounded_num) # Output: 8
Округление чисел до ближайшего целого числа — распространенная задача в программировании на Python. В этой статье мы рассмотрели семь различных методов достижения этой цели, в том числе использование функции round(), функции int(), math.ceil()и math.floor()функции, функция numpy.rint(), функция math.trunc(), пользовательские функции с арифметическими операциями и форматирование строк с помощью f-строк. В зависимости от ваших конкретных требований и характера ваших данных вы можете выбрать наиболее подходящий метод, обеспечивающий точное округление.