La función del entero más cercano en Python

Escrito por g.s. jackson | Traducido por beatriz sánchez
  • Comparte
  • Twittea
  • Comparte
  • Pin
  • E-mail
La función del entero más cercano en Python
Aprende a redondear a enteros usando las funciones de la librería matemática de Python. (laptop image by Angie Lingnau from Fotolia.com)

Quizás debido a su reputación de lenguaje de programación flexible y potente, Python contiene muchas librerías internas para automatizar tareas matemáticas y computacionales complejas y habituales. La "librería matemática" contiene muchos métodos para realizar cálculos típicos u operaciones como redondeo. Pero redondear decimales en Python no redondea a un entero, sino a un decimal entero. Convertir a enteros requiere el uso de la librería matemática de Python junto con el uso de algunas librerías de conversión incorporadas.

Otras personas están leyendo

Python y el redondeo

La librería matemática de Python ofrece un paquete de métodos útiles para redondear números decimales en números enteros. Puedes redondear un número de la forma tradicional (hasta el número entero menor más cercano en partes de fracción de 0,4 o menos, y hacia el mayor en partes de 0,5 o más) usando el método "round()". El siguiente ejemplo muestra cómo redondear números decimales usando el método "round":

>>>f = 5.455 >>>round(f) 5.0 >>>round(f, 2) //rounds to 2 decimals 5.46

Métodos techo y suelo

Como parte de la librería matemática, los métodos "floor()" y "ceil()" proporcionan una forma única de redondear decimales que puedes considerar útiles en determinados cálculos. El método de suelo redondea al número entero menor más cercana hacia el infinito negativo (independientemente del valor decimal), y el método de techo lo redondea hacia el número entero mayor más cercano al infinito positivo. El siguiente ejemplo muestra cómo funcionan las dos funciones:

>>>import math >>>f = 3.5 >>>g = -3.5 >>>floor(f) 3.0 >>>ceil(3.5) 4.0 >>>floor(g) -4.0 >>>ceil(g) -3.0

Redondeo y enteros

Las operaciones de redondeo ilustradas muestran cómo usar estas funciones, pero también tienen efectos secundarios: en las versiones de Python anteriores a la 3.0, los decimales redondeados no se redondeaban a enteros, sino a decimales. Debido a la forma de representar decimales en las arquitecturas de computadoras, esto podía provocar problemas en los cálculos de alta precisión donde los programadores necesitan enteros. Puedes convertir un número flotante en un entero usando el método "int()", como en este ejemplo:

>>>f = 3.5 >>>round(f) 4.0 >>>int(round(f)) 4

Método de ejemplo

Usando este conocimiento, puedes desarrollar un método para redondear decimales en enteros fácilmente. Los siguientes ejemplos muestran ejemplos cortos de métodos que determinan el techo y suelo de un número como un entero, y otro que se redondea a un lugar decimal escogido por el usuario (o un entero):

>>>import math >>>def integerFloor(x): . . . return int(floor(x)) >>>def integerCeiling(x): . . . return int(ceil(x)) >>>def rounding(x, dec): . . . if dec == 0: . . . return int(round(x)) . . . else: . . . return(round(x, dec))

No dejes de ver

Filtrar por:
  • Mostrar todos
  • Artículos
  • Galerías de fotos
  • Videos
Ordenar:
  • Más relevante
  • Más popular
  • Más reciente

No se encuentran artículos disponibles

No se encuentran slideshows disponibles

No se encuentran videos disponibles