Автор оригинала: Team Python Pool.
Лучшие способы округления чисел в Python
Привет, кодеры!! В этой статье мы будем изучать различные способы округления числа в Python.<сильный> Округление числа в основном делает его проще, сохраняя при этом его значение близким к тому, что оно было. Давайте посмотрим, как мы можем округлить число в Python.
Встроенная функция round() в Python:
В Python нам предоставляется встроенная функция round (). Эта функция принимает два числовых параметра: number и ndigits. Он возвращает число, округленное до ndigits. По умолчанию значение параметра ndigits равно нулю.
Синтаксис:
round(number, ndigits)
Параметры:
- number – число, которое необходимо округлить
- ndigits (необязательно) – Значение, до которого данное число должно быть округлено. Его значение по умолчанию равно 0.
Возвращаемое значение:
- Число n округляется до ndigits.
print(round(12)) print(round(12.7)) print(round(12.4))
ВЫХОД:
12 13 12
В этом примере мы не передали никакого значения параметру digits. В результате он принимает значение по умолчанию, то есть 0. Мы видим, что целое число остается на своем месте, 12.7 округляется до 13, а 12.4 округляется до 12.
Понимание проблемы с помощью метода round():
print(round(2.5)) print(round(3.5))
ВЫХОД:
2 4
Как мы видим, 2.5 округляется до 2, тогда как 3.5 округляется до 4. Ну, это не глюк в программировании на Python. Именно так работает функция round (). Давайте рассмотрим несколько различных способов округления целого числа в Python.
Различные способы округления числа в Python:
Мы обсудим 5 других методов округления числа в python, кроме метода round ().
1) Метод усечения для округления в Python:
Как следует из названия, усечение используется для сокращения вещей. Это простой метод, который можно использовать для округления числа путем усечения заданного числа цифр.
12.345 | 10.00 | Десятки мест |
12.345 | 12.00 | Одно место |
12.345 | 12.30 | Десятое место |
12.345 | 12.34 | Сотые места |
Синтаксис:
math.trunc(x)
Параметр:
- x -> Десятичное число, которое должно быть усечено.
Возвращаемое значение:
- Усеченная целая часть числа
Пример:
import math print( math.trunc(3.5) )
3
В этом примере мы использовали встроенный метод math.trunc() Python из математического модуля для получения целой части заданного десятичного числа.
2) Использование math.floor():
Число может быть округлено до определенной цифры.
19.345 | 10.00 | Десятки мест |
19.345 | 19.00 | Одно место |
19.345 | 19.30 | Десятое место |
19.345 | 19.34 | Сотые места |
Синтаксис:
math.floor(x)
Параметр:
- x -> Десятичное число, которое необходимо округлить в меньшую сторону.
Возвращаемое значение:
- Число округляется до ближайшего целого.
Пример:
import math print( math.floor(3.5) )
3
Как мы видим в этом примере, число округляется до ближайшего целого числа, большего, чем само число.
3) Использование int() для округления числа в python:
Этот метод по существу используется для преобразования заданного числа в целое.
Синтаксис:
int(value, base)
Параметры:
- value: число или строка, преобразуемые в int
- база: числовой формат
Пример:
1
Здесь мы использовали метод int() для преобразования десятичного числа в целое число, округляя его до ближайшего возможного целочисленного значения.
4) Использование numpy.floor() для округления вниз:
Это математическая функция, которая возвращает пол элементов массива.
Синтаксис:
numpy.floor(a)
Параметр:
- a: входной массив
Возвращаемое значение:
- массив, содержащий значение пола каждого элемента
Пример:
import numpy as np.array([1.22, 1.67, 2.53]).floor(x) print(x)
[1. 1. 2.]
Как вы можете видеть, используя метод numpy.floor (), мы смогли округлить элементы данного массива.
5) Использование оператора//для округления вниз в Python:
//является оператором деления пола Python. <сильный> Он возвращает значение пола как для целочисленных, так и для аргументов с плавающей запятой.
Выход:
-1
Вывод:
На этом мы заканчиваем нашу статью. Это два способа округления числа в Python. Можно также округлить число, используя href="https://www.w3schools.com/python/ref_math_ceil.asp">метод math.ceil(). href="https://www.w3schools.com/python/ref_math_ceil.asp">метод math.ceil().
Однако, если у вас есть какие-либо сомнения или вопросы, дайте мне знать в разделе комментариев ниже. Я постараюсь помочь вам как можно скорее.
Счастливого Пифонирования!