Рубрики
Без рубрики

Python Round ()

Python Round (), Python Round Function, Python Round Float, Python Round Round Number, Python Round Recild Recilding, округление номера Python, пример пример

Автор оригинала: Pankaj Kumar.

Функция Python Rounl () используется для выполнения операции округления по номерам.

Python Round ()

Синтаксис функции Python Rounl ():

round(number[, ndigits])

Номер округляется до ndigits точность после десятичной точки.

Если ndigit не предоставляется или нет, то возвращается ближайшее целое число.

При закруглением входного номера в целое число, если оба круглые значения, так и раундные значения одинаково закрываются, то даже возвращается даже число. Например, 10,5 будут округлены до 10, в то время как 11,5 будут округлены до 12.

Любое целочисленное значение действителен для NDigits (положительных, ноль или отрицательных).

Примеры функций Python Round ()

Давайте посмотрим на определенный пример функции Round ().

раунд () до целочисленного

print(round(10, 2))

print(round(10.2))
print(round(10.8))
print(round(11.5))

Выход:

10
10
11
12

раунд () до даже стороны

# if both side of rounding is same, even is returned
print(round(10.5))
print(round(12.5))

Выход:

10
12

раунд () с ndigit как никто

print(round(1.5))
# OR
print(round(1.5, None))

Выход:

2
2

круглый () с отрицательным ndigit

print(round(100, 0))
print(round(100.1234, -4))
print(round(100.1234, -5))

Выход:

100
100.0
0.0

Питона круглая поплавок

Когда округление применяется на числах плавающих точек, результат может иногда удивительно. Это связано с тем, что числа хранятся в двоичном формате, и в основном десятичные фракции не могут быть представлены точно так же, как двоичные фракции.

Python делает приближение и представляет нас закругленное значение, из-за этой арифметики с плавающей точкой иногда может привести к удивительным значениям.

Например:

>>>.1 + .1 == .2
True
>>>.1 + .1 + .1 == .3
False
>>>.1 + .1 + .1 + .1 == .4
True

Давайте посмотрим некоторые примеры функции Round () с поплавками.

print(round(2.675, 2))

print(round(1.2356, 2))
print(round(-1.2356, 2))

Выход:

2.67
1.24
-1.24

Обратите внимание, что первое поплавное округление кажется неверным. В идеале он должен быть округлен до 2,68.

Это ограничение арифметических операций с поплавками, мы не должны полагаться на условную логику при работе с цифрами плавающих точек.

круглый () с пользовательским объектом

Мы можем использовать функцию Rounl () с пользовательским объектом, если они реализуют функцию __round __ (). Давайте посмотрим на пример.

class Data:
    id = 0

    def __init__(self, i):
        self.id = i

    def __round__(self, n):
        return round(self.id, n)


d = Data(10.5234)
print(round(d, 2))
print(round(d, 1))

Выход:

10.52
10.5

Ссылка: Официальная документация