Uso de números en Python

Completado

Más allá de la aritmética básica, puede usar otras operaciones en los números. Es posible que tenga que realizar un redondeo o convertir cadenas en números.

En el escenario de este módulo, quiere aceptar la entrada de un usuario. La entrada será una cadena en lugar de un número, por lo que deberá convertirla en un número. Además, es posible que el usuario escriba valores que le den una respuesta negativa que no querrá mostrar. Puede que tenga que convertir la respuesta en el valor absoluto. Afortunadamente, Python proporciona utilidades para estas operaciones.

Conversión de cadenas en números

Python admite dos tipos principales de números: números enteros (o int) y número de punto flotante (o float). La diferencia clave entre ambos es la existencia de un separador decimal; los enteros son números enteros, mientras que los números de punto flotante contienen un valor decimal.

Al convertir cadenas en números, debe indicar el tipo de número que desea crear. Tiene que decidir si necesita un separador decimal. Se usa int para realizar la conversión en un número entero y float para hacerlo en un número de punto flotante.

demo_int = int('215')
print(demo_int)

demo_float = float('215.3')
print(demo_float)
215
215.3

Importante

Si usa un valor no válido para int o float, recibirá un error.

Valores absolutos

En matemáticas, un valor absoluto es el número no negativo sin su signo. El uso de un valor absoluto puede ser útil en situaciones varias, incluido el ejemplo de búsqueda para determinar la distancia entre dos planetas. Considere los cálculos siguientes:

print(39 - 16)
print(16 - 39)

Observe que la diferencia entre las dos ecuaciones es que los números se invierten. Las respuestas son 23 y -23, respectivamente. Al determinar la distancia entre dos planetas, no importa el orden en el que se escriben los números, ya que la respuesta absoluta es la misma.

Use abs para convertir el valor negativo en su valor absoluto. Si hace la misma operación mediante abs (e imprime las respuestas), verá que muestra 23 para ambas ecuaciones.

print(abs(39 - 16))
print(abs(16 - 39))
23
23

Redondeo

También es útil la función integrada de Python denominada round. Úsela para redondear hacia arriba al entero más cercano si el valor decimal es mayor que .5, o hacia abajo si es menor que .5. Si el valor decimal es igual a .5, la función redondea hacia arriba o hacia abajo hasta el entero par más cercano.

print(round(1.4))
print(round(1.5))
print(round(2.5))
print(round(2.6))
1
2
2
3

Biblioteca matemática

Python tiene bibliotecas para proporcionar operaciones y cálculos más avanzados. Una de las más comunes es la biblioteca math. math permite hacer el redondeo con floor y ceil, proporcionar el valor de pi y muchas otras operaciones. Veamos cómo usar esta biblioteca para redondear hacia arriba o hacia abajo.

El redondeo de números permite quitar la parte decimal de un número de punto flotante. Puede optar por redondear siempre hacia arriba al número entero más cercano si usa ceil, o hacia abajo si usa floor.

from math import ceil, floor

round_up = ceil(12.5)
print(round_up)

round_down = floor(12.5)
print(round_down)
13
12