La función round () devuelve un número de punto flotante redondeado al número especificado de decimales.
La sintaxis de la round()
función es:
round (número, n dígitos)
Parámetros round ()
La round()
función toma dos parámetros:
- número - el número a redondear
- ndigits (opcional) - número hasta el que se redondea el número dado; predeterminado en 0
Valor de retorno de round ()
- Si
ndigits
no se proporciona,round()
devuelve el número entero más cercano al número dado. - Si
ndigits
se proporciona,round()
devuelve el número redondeado a losndigits
dígitos.
Ejemplo 1: ¿Cómo funciona round () en Python?
# for integers print(round(10)) # for floating point print(round(10.7)) # even choice print(round(5.5))
Salida
10 11 6
Ejemplo 2: Redondea un número al número dado de lugares decimales
print(round(2.665, 2)) print(round(2.675, 2))
Salida
2,67 2,67
Nota : El comportamiento de los round()
flotadores puede resultar sorprendente. Aviso round(2.675, 2)
da en 2.67
lugar de lo esperado 2.68
. Esto no es un error: es el resultado del hecho de que la mayoría de las fracciones decimales no se pueden representar exactamente como flotantes.
Cuando el decimal 2.675
se convierte en un número de coma flotante binario, se reemplaza nuevamente con una aproximación binaria, cuyo valor exacto es:
2.67499999999999982236431605997495353221893310546875
Debido a esto, se redondea a 2,67.
Si se encuentra en una situación en la que se necesita esta precisión, considere usar el decimal
módulo, que está diseñado para aritmética de punto flotante:
from decimal import Decimal # normal float num = 2.675 print(round(num, 2)) # using decimal.Decimal (passed float as string for precision) num = Decimal('2.675') print(round(num, 2))
Salida
2,67 2,68