Tecnología

Inicio

El Entero más cercano en Python

Tal vez acredite su reputación como un lenguaje de programación potente y flexible, Python contiene muchas bibliotecas internas para automatizar tareas computacionales y matemáticos comunes o complejas. La "biblioteca matemática" contiene muchos métodos para llevar a cabo los cálculos típicos u operaciones tales como el redondeo. Sin embargo, el redondeo de decimales en Python no redondea a un entero, sino todo un decimal. La conversión a números enteros requiere el uso de la biblioteca matemática Python junto con el uso de algunas bibliotecas de conversión incorporadas.

Python y redondeo

La biblioteca matemática Python ofrece un paquete de métodos útiles para redondear números decimales a números enteros. Puede redondear un número de la forma tradicional (por defecto al número entero más próximo para las partes fraccionarias de 0,4 o inferior, y hasta de piezas más grandes y .5) utilizando el método de "round ()". El siguiente ejemplo muestra cómo redondear números decimales utilizando el método redonda:

f = 5.455

redonda (f)

5.0

redonda (f, 2) // se redondea a 2 decimales

5.46

Métodos techo y el suelo

Como parte de la biblioteca matemática, el "piso ()" y "ceil ()" métodos proporcionan una manera única para redondear los decimales que le pueden resultar útiles en ciertos cálculos. El método planta redondea al número entero más próximo por lo menos hacia el infinito negativo (sin tener en cuenta el valor decimal), y el método de techo redondeará hasta el número entero más próximo hacia el infinito positivo. El siguiente ejemplo muestra cómo funcionan las dos funciones:

import math

f = 3,5

g = -3.5

piso (f)

3.0

ceil (3.5)

4.0

piso (g)

-4,0

ceil (g)

-3,0

Redondeo y los números enteros

Las operaciones de redondeo ilustradas muestran cómo funcionan estas funciones, pero también muestran un efecto secundario: en las versiones de Python 3.0 antes, decimales redondeadas no lo hacen y vuelta a números enteros, pero decimales. Debido a la forma decimales se representan mediante arquitecturas de computadora, esto podría causar problemas en los cálculos de alta precisión donde los programadores pueden requerir integers.You puede convertir un número flotante a un entero utilizando el método de "int ()", como en este ejemplo:

f = 3,5

redonda (f)

4.0

int (redonda (f))

4

ejemplo Método

El uso de este conocimiento, se puede desarrollar un método para redondear los decimales a números enteros fácilmente. Los siguientes ejemplos muestran breves ejemplos de métodos que determinan el suelo y el techo de un número como un número entero, y otro que se redondea a una cifra decimal designado por el usuario (o un número entero):

import math

def integerFloor (x):

. . . retorno int (floor (x))

def integerCeiling (x):

. . . retorno int (ceil (x))

def redondeo (x, dec):

. . . Si diciembre == 0:

. . . retorno int (round (x))

. . . más:

. . . vuelta (round (x, dec))