← Volver
La función incorporada
Un segundo argumento indica la cantidad de dígitos después del punto respecto de la cual se debe realizar la aproximación.
Nótese que cuando el último dígito es 5, la función no redondea hacia arriba sino que retorna el número par más próximo:
Si se quiere redondear hacia arriba, úsese en su lugar la siguiente función:
Cómo redondear un número decimal
round()
toma como argumento un número de coma flotante y retorna un número entero según las reglas del redondeo.>>> round(1.4)
1
>>> round(1.5)
2
Un segundo argumento indica la cantidad de dígitos después del punto respecto de la cual se debe realizar la aproximación.
>>> round(1.539, 2)
1.54
Nótese que cuando el último dígito es 5, la función no redondea hacia arriba sino que retorna el número par más próximo:
>>> round(1.5)
2
>>> round(2.5) # Generalmente se esperaría 3.
2
Si se quiere redondear hacia arriba, úsese en su lugar la siguiente función:
import math
# Fuente: https://stackoverflow.com/a/52617883/2116607
def redondear(n: float, decimals: int = 0) -> float:
expoN = n * 10 ** decimals
if abs(expoN) - abs(math.floor(expoN)) < 0.5:
return math.floor(expoN) / 10 ** decimals
return math.ceil(expoN) / 10 ** decimals
print(redondear(1.5)) # 2
print(redondear(2.5)) # 3
print(redondear(1.535, 2)) # 1.54
👨💻 ¡Ya lanzamos el curso oficial de Recursos Python en Udemy! Un curso moderno para aprender Python desde cero con programación orientada a objetos, SQL y tkinter en 2024.
🐍 También te puede interesar:
💡 Ofrecemos servicios profesionales de desarrollo y capacitación en Python a personas y empresas. Consultanos por tu proyecto.