Funciones para números flotantes
En Python, las funciones para números flotantes permiten realizar operaciones y manipulaciones específicas con números decimales. A continuación, se presentan algunas de las funciones más comunes y su utilidad:
round()
La función round()
se utiliza para redondear un número decimal al número entero más cercano.
Podemos observar la documentación de la función round()
en la documentación oficial de Python.
Aquí podemos ver su sintaxis, bastante críptica:
Así que vamos a analizar como funciona. La función round()
toma dos argumentos:
- number: el número decimal que se va a redondear, y
- ndigits: la cantidad de decimales a la que se va a redondear.
Si no se proporciona el segundo argumento, la función round()
redondeará el número decimal al número entero más cercano. ¿Cómo nos damos cuenta que un argumento es opcional? Bueno, en la documentación oficial de Python, cuando ves corchetes []
alrededor de un argumento, significa que es opcional.
En este caso, el argumento ndigits
es opcional, lo que significa es que si desea especificar con mayor precisión el número de dígitos a los que desea redondear la función de redondeo, podemos especificarlo aquí agregando una coma y luego ese número. Por el contrario, si no especificamos una cantidad de dígitos y solo indicamos el número a redondear, la función round()
redondeará dicho número al entero más cercano.
Por ejemplo, si deseamos redondear el número decimal 3.14159
al número entero más cercano, podemos hacerlo de la siguiente manera:
# Redondear el número decimal 3.14159 al número entero más cercano
print(round(3.14159))
La salida en la Terminal será:
``` py Terminal (Entrada/Salida) 3
Como puedes ver, la función `round()` redondea el número decimal `3.14159` al número entero más cercano, que es `3`.
Si deseamos redondear el número decimal `3.14159` al número entero más cercano, pero con una precisión de dos decimales, podemos hacerlo de la siguiente manera:
``` py title="Ejemplo de uso de la función round() con precisión de dos decimales"
# Redondear el número decimal 3.14159 al número entero más cercano con dos decimales
print(round(3.14159, 2))
La salida en la Terminal será:
``` py Terminal (Entrada/Salida) 3.14
Como puedes ver, la función `round()` redondea el número decimal `3.14159` al número entero más cercano con dos decimales de precisión, que es `3.14`.
!!! important "¡Para recordar!"
La función `round()` se utiliza para redondear un número decimal al número entero más cercano. Si se proporciona un segundo argumento, la función `round()` redondeará el número decimal al número entero más cercano con la cantidad de decimales especificada. Si no se proporciona un segundo argumento, la función `round()` redondeará el número decimal al número entero más cercano.
Recordemos, ahora, el código de nuestra calculadora:
``` py title="Python calculadora_sumadora.py" linenums="1"
# Ingreso de datos por el usuario, convertidos a números flotantes
n1 = float(input("Ingrese el primer número: "))
n2 = float(input("Ingrese el segundo número: "))
# Imprimir el resultado directamente
print(f"La suma de {n1} y {n2} es igual a {n1 + n2}")
Recuerda que la
f
al principio de la cadena de formato indica que se trata de una f-string, que permite la interpolación de variables1 en una cadena de caracteres. Y que dicha interpolación se realiza entre llaves{}
dentro de la cadena de caracteres.
Así, nuestro código devuelve un resultado con decimales, pero si deseamos redondear el resultado al número entero más cercano, podemos utilizar la función round()
de la siguiente manera:
Python calculadora_sumadora.py | |
---|---|
En este caso, la función round()
redondea el resultado de la suma de los números decimales n1
y n2
al número entero más cercano.
Veamos otro ejemplo de round()
tomando nuestro código anterior utilizado para efectuar la división de dos números enteros:
Recordemos que al dividir 2
entre 3
, el resultado es 0.6666666666666666
, un número flotante con decimales, muchos decimales. Sería bueno redondear este número tan largo a un número con solo dos decimales.
La función round()
nos permite hacer esto:
En este caso, la función round()
redondea el resultado de la división de los números enteros n1
y n2
no solo al número entero más cercano, sino al número de dígitos más cercano para representar dos decimales de precisión, determinados por el número 2
pasado como segundo argumento en round(n1 / n2, 2)
.
De esta manera, el resultado de la división de 2
entre 3
se redondeará a 0.67
en lugar de 0.6666666666666666
.
Existe otra manera de lograr el mismo resultado utilizando f-strings que vamos a estudiar a continuación.
Referencias
-
La interpolación de variables es una técnica utilizada en programación durante el procesamiento de texto para insertar el valor de una variable dentro de una cadena de texto. En lugar de construir cadenas de texto manualmente concatenando fragmentos de texto con valores de variables, la interpolación permite insertar estos valores de manera directa y más legible. ↩