№32 Функція round() / для початківців
Round – вбудована функція Python. Її завдання - округлювати число з плаваючою точкою до тієї цифри, яку задає користувач. Якщо її не задати, то повертається найближче ціле число, адже значенням за замовчуванням є 0. Функція round допомагає покращувати числа з плаваючою точкою.
Наприклад, якщо заокруглити 4,5 до найближчого цілого, то повернеться 5. Однак 4,7 буде результатом, якщо заокруглити до однієї цифри 4,74. Швидке заокруглення — важливий інструмент для роботи з такими числами.
- Число з плаваючою точкою ( float_number ) є числом, яке потрібно округлити
- Кількість дробів ( number_of_decimals ) визначає, до якої цифри буде заокруглено число. Функція повертає float.
- Якщо кількість цифр не вказано, то за умовчанням там стоїть нуль. У такому разі округлення відбувається до найближчого цілого і повертається також ціле число.
Приклади роботи функції round у Python
Приклад №1 – один параметр
# Цілі числа
a = 12
round (a)
print (a)
# Десяткові числа
b = 21.7
c = 21.4
print(round(b))
print(round(c))
Тут повертається ціле число, до якого і округляється число з точкою, що плаває.
Приклад №2 - обидва параметри
коли остання цифра 5
a = 5.465
print(round(a, 2))
коли остання цифра >=5
b = 5.476
print(round(b, 2))
коли остання цифра менше 5
c = 5.473
print(round(c, 2))
Практичні приклади
Приклад №1 — функція round допомагає під час роботи з дробами
Коли дроби не можна конвертувати в десяткові дроби, у справу входить функція round. Після десяткової точки зазвичай багато цифр, наприклад у випадку з 22/7 (Pi). Але зазвичай використовується не більше 2-4 цифр. Допоміжний вбудований у round тип буде округляти до найближчого кратного 10.
round(3.675, 2) поверне 3,67, а чи не 3,68. Дивно, але це не баг.Результат свідчить про те, що більшість дробів що неспроможні вважатися точними числами з плаваючою точкою.
a = 1/6
print(a)
print(round(a, 2))
Приклад №2 - виключенняя та помилки
Функція round округлить 2, 2,5 та 1,5 до 2. Це теж не баг, а нормальна поведінка функції.
a = 1.5
b = 2
c = 2.5
print(round(a))
print(round(b))
print(round(c))
Якщо дивитися в цілому, то працює функція так:
tup = (-40.95, 50.85, 10.98, 20.26, 30.05) # Створення кортежу
lis = [-39.29, -42.15, -39.97, -10.98, 32.65] # Створення списку
print('Округлення негативного десяткового числа = %.2f' %round(-19.48476))
print('Округлення позитивного десяткового числа = %.2f' %round(15.98763))
print('Округлення з другим параметром при позитивному значенні = %.3f' %round(11.98763, 3))
print('Округлення з другим параметром при негативному значенні = %.3f' %round(-18.48476, 3))
print('Округлення елементів у списку = %d' %round(lis[2]))
print('Округлення елементів у списку = %d' %round(lis[4]))
print('Округлення елементів у кортежі = %d' %round(tup[2]))
print('Округлення елементів у кортежі = %d' %round(tup[4]))
print('Округлення суми чисел = %.2f' %round(20 + 40 - 20.6578, 2))
Округлення від'ємного десяткового числа = -19.00
Округлення позитивного десяткового числа = 16.00
Округлення з другим параметром за позитивного значення = 11.988
Округлення з другим параметром при отрицательном значенні = -18.485
Округлення елементів у списку = -40
Округлення елементів у списку = 33
Округлення елементів у кортежі = 11
Округлення елементів у кортежі = 30
Округлення суми чисел = 39.34
Є різні методи заокруглення в Python. Одна з них - це скорочення.
Скорочення
Скорочення використовується для зменшення розмірів елементів.Для позитивних чисел функція округляє їх до найближчого цілого у менший бік, а негативних — у більшу.
Наприклад, round(565.5556, -2) використовується як скорочення. Вона поверне 600.
Висновки
Функція round дозволяє спростити роботу з великими обсягами даних. Її завдання – повертати число з певною кількістю цифр після точки.
Округлення чисел у Python п'ятьма способами
Округлювати числа - значить спрощувати їх, видаляючи зайві десяткові частини. Це важливо, тому що спрощує математику і допомагає нам краще розуміти та працювати з числами. У цій статті ми обговоримо, як можна округляти числа за допомогою простих функцій у NumPy у Python. Отже, почнемо.
1. Функція round()
Функція round() змінює число чи групу чисел до найближчого цілого числа чи певної кількості знаків після коми.
Основний синтаксис виглядає так:
np.round(array, decimals)
- array : Це вхідний масив або число, яке ви хочете заокруглити.
- decimals : Дозволяє вибрати, до скільки цифр після коми потрібно округляти. Якщо ви не вкажете, то округлення буде здійснено до найближчого цілого числа.
Якщо десяткова частина числа менша за 0,5, воно округляється в меншу сторону. Якщо десяткова частина 0,5 або більше, то округляється у більшу сторону.
Давайте використовуємо це в коді:
import numpy as np a_input = input("Enter decimal numbers with separating spaces: ") arr = np.array([float(x) for x in a_input.split()]) d_places = int(input("Enter the number of decimal places to round to: ")) rounded_arr = np.round(arr, d_places) print("Original array:", arr) print("Rounded array:", rounded_arr)
- Програма просить користувача ввести десяткові числа, розділені пробілами.
- Програма приймає введені дані, розбиває їх на прогалини, перетворює кожну частину в число з точкою, що плаває, і створює масив з цих чисел.
- Потім вона запитує користувача, до скільки знаків після коми потрібно округлити число.
- Вона округляє кожну кількість у масиві до зазначеної кількості знаків після коми.
- І, нарешті, друкує вихідний масив і округлений масив.
2. Функція floor()
floor() - це ще одна функція бібліотеки NumPy, яка допомагає округляти числа до найближчого цілого числа або цілої цифри.
Синтаксис функції виглядає так:
Завжди відкидається десяткова частина і заокруглюється до меншого цілого числа. У разі позитивних чисел він відсікає десяткову частину та перетворює їх у менше ціле число. Для негативних чисел він рухається нанівець і стає найближчим меншим цілим числом.
Давайте розберемося з кодом:
import numpy as np a_input = input("Enter decimal numbers with separating spaces: ") arr = np.array([float(x) for x in a_input.split()]) rounded_arr = np.floor(arr) print( "Original array:", arr) print("Rounded array:", rounded_arr)
Цей код робить таке:
- Запитує десяткові числа, розділені пробілами.
- Перетворює їх у числа з плаваючою точкою та створює масив.
- Округлює кожну кількість до найближчого цілого числа.
- Виводить вихідний масив та округлений масив.
3. Функція ceil()
Функція ceil() приймає на вхід число або масив чисел і округляє їх до найближчого цілого числа, яке більше або дорівнює вихідному числу.
Її синтаксис виглядає так:
Завжди виконується перехід до наступного більшого цілого числа, ігноруючи десяткову частину. Для позитивних чисел він округляє у бік. Для негативних чисел він переходить до наступного цілого числа, найближчого до нуля.
Давайте реалізуємо це за допомогою коду:
import numpy as np a_input = input("Enter decimal numbers with separating spaces: ") arr = np.array([float(x) for x in a_input.split()]) rounded_arr = np.ceil(arr) print( "Original array:", arr) print("Rounded array:", rounded_arr)
Робота цього коду аналогічна двом попереднім, крім того, що він округляє кожне число до найближчого цілого числа.
Функції ceil() і floor() можуть бути досить заплутаними, чи не так? Не хвилюйтеся, ми маємо трюк, який допоможе вам розібратися!
4. Функція trunc()
Функція trunc() бере число чи групу чисел і відсікає десяткову частину, залишаючи лише частину.
Основний синтаксис виглядає наступним чином, як вхідні дані використовується масив:
Просто обрізається десяткова частина без округлення. Завжди прагне нуля. Для позитивних чисел зберігає цілу частину. Для негативних чисел зберігається ціла частина та знак мінус.
Давайте використовуємо це в коді:
import numpy as np a_input = input("Enter decimal numbers with separating spaces: ") arr = np.array([float(x) for x in a_input.split()]) rounded_arr = np.trunc(arr) print( "Original array:", arr) print("Rounded array:", rounded_arr)
Цей код приймає на вхід десяткові числа, перетворює їх на масив, а потім видаляє десяткову частину, щоб залишити тільки цілу частину, використовуючи trunc() .
5. Функція around()
Функція around() округляє дані, що вводяться, до заданої кількості десяткових знаків. Вона схожа на round() Python, але дає більше контролю над точністю округлення.
Синтаксис для неї наступний:
np.around(array, decimals)
- decimals - задана межа, до якої їх потрібно округлити.
Вона округляє число, що вводиться до найближчого значення із зазначеною кількістю десяткових знаків. Якщо десяткова частина рівно на півдорозі між двома округленими значеннями, around() округляє до найближчого парного значення для більш збалансованого підходу до округлення.
Давайте реалізуємо це у коді:
import numpy as np a_input = input("Enter decimal numbers with separating spaces: ") arr = np.array([float(x) for x in a_input.split()]) rounded_arr = np.around(arr, 0) print("Original array:", arr) print("Rounded array:", rounded_arr)
Цей код приймає на вхід десяткові числа, формує їх у масив і округляє кожне число до цілого найближчого числа за допомогою функції around() .
Висновок
Спрощення чисел допомагає в математиці У цій статті ми розглянули, як округляти числа в Python за допомогою NumPy. десяткові знаки, а around() забезпечує точне заокруглення. розібратися із заокругленням чисел!
Джерело: