En Python existen dos tipos de datos que nos permiten trabajar con números. Éstos tipos de datos son los enteros (integers) y los de coma flotante (floating point). La diferencia entre ambos reside en el hecho de que los números de coma flotante soportan decimales, mientras que los enteros no. Así pues, podemos decir que el número 10 es de tipo entero, pero que el 10.0 es de coma flotante puesto que tiene un decimal (aún siendo éste 0).
Operaciones básicas
Con los números podemos realizar operaciones como si Python se tratase de una simple calculadora. Para empezar tenemos las cuatro operaciones básicas que son: suma (+), resta (-), multiplicación (*) y división (/).
# Operaciones básicas con números en Python >>> 1+2 3 >>> 3.0-2 1.0 >>> 2*3 6 >>> 6/2 3.0
Podemos ver que el resultado de una suma, resta o multiplicación de dos números enteros es otro número entero. Pero si uno de los números es de coma flotante el resultado también es de coma flotante.
En el caso de la división el tipo de dato del resultado varía en función de la versión de Python que utilicemos. En un artículo anterior ya hemos visto que en Python 2 la división entre números enteros es otro número entero. Por el contrario, en Python 3 el resultado de una división (como en la del ejemplo anterior) es siempre de coma flotante.
También en relación a la división, hay que tener en cuenta que si dividimos entre 0 Python nos da un error del tipo ZeroDivisionError
.
>>> 1/0 Traceback (most recent call last): File "<stdin>", line 1, in <module> ZeroDivisionError: division by zero
Otras operaciones básicas que podemos realizar son el módulo y la potencia. El módulo consiste en obtener el residuo de una división. Así pues, decimos que el resultado de la operación 10 módulo 3 es 1, ya que 3 * 3 + 1 = 10. Esta operación se realiza en Python con el símbolo de tanto por ciento (%). Una de las utilidades de esta operación es comprobar si un número es par o impar. Si el número es par, entonces su modulo dos es cero.
>>> 10%2 0
La potencia se puede calcular en Python con un doble asterisco (**) o con el método pow()
. En este caso podemos decir por ejemplo que 2 elevado a 4 es 16.
>>> 2**4 16 >>> pow(2,4) 16
Adicionalmente, también podemos realizar operaciones sobre números aislados como obtener su valor absoluto o redondearlo. El valor absoluto (o módulo) de un número es el valor positivo de ese número indistintamente de su signo, y en Python se calcula con la función integrada abs()
.
>>> abs(-3) 3
Por su parte, redondear consiste en remplazar un número por un valor más corto o simple de representar. En Python se realiza con la función integrada round()
especificando el número a redondear y los decimales deseados.
>>> round(3.25) 3 >>> round(3.25,1) 3.2
Operaciones con el módulo math
Aparte podemos realizar otras operaciones matemáticas como la raíz cuadrada, logaritmos, funciones trigonométricas, etc. mediante las funciones disponibles en el modulo math
de Python. Con el modulo math
también podemos hacer uso de constantes matemáticas como el número pi o el número e.
>>> import math >>> math.sqrt(16) 4.0 >>> math.sin(math.pi/2) 1.0 >>> math.log(math.e) 1.0