Empezamos con las operaciones matemáticas básicas en Python. Si las matemáticas no son lo tuyo, no te preocupes, va a ser todo muy sencillo todavía. Ya habrá tiempo de aprender cosas más complicadas.
La suma, resta multiplicación y división
Empecemos por la suma. Para sumar en Python, hay que utilizar el operador "+". Es el mismo que empleamos en la concatenación. Si lo usas con dos strings, los concatena, en cambio, si lo empleas con valores numéricos, los suma.
# Declaración de dos valores numéricos
numero1 = 10
numero2 = 3
# Se realiza la operación de suma. Almacena un 13 (10 + 3).
suma = numero1 + numero2
# Se imprimen los valores de cada variable y el resultado de la suma.
print(f'La suma de {numero1} + {numero2} es {suma}.')
Resultado en la consola
La suma de 10 + 3 es 13.
Analicemos el código. Primero almaceno dos números en variables para operar con ellos.
En la variable "suma", realizo la operación de sumar el valor de las dos variables (10 + 3).
En el print() he utilizado el formateo de strings para mostrar los valores de las variables como quiera.
Números en strings
Ten en cuenta, que los valores numéricos, son identificados por Python como tal por no llevar comillas. Si las llevan, se convierten en strings y no son operables matemáticamente hablando:
numero1 = "10"
numero2 = "3"
suma = numero1 + numero2
print(f'La suma de {numero1} + {numero2} es {suma}.')
Resultado en la consola
La suma de 10 + 3 es 103.
Fíjate en las variables, he puesto los números como strings.
Al ser strings, no se suman, se concatenan. El resultado de esto es que se junta el 10 con el 3, devolviendo un 103.
La resta en Python
Para proceder con la operación de resta, solo tienes que usar el símbolo menos o guion "-".
numero1 = 10
numero2 = 3
resta = numero1 - numero2
print(f'La resta de {numero1} - {numero2} es {resta}.')
Resultado en la consola
La resta de 10 - 3 es 7.
La multiplicación en Python
La multiplicación en Python se realiza con el operador "*" (asterísco).
numero1 = 10
numero2 = 3
multiplicacion = numero1 * numero2
print(f'La multiplicación entre {numero1} X {numero2} es {multiplicacion}.')
Resultado en la consola
La multiplicación de 10 X 3 es 30.
La división en Python
La división en Python se efectúa con el símbolo "/".
numero1 = 10
numero2 = 3
division = numero1 / numero2
print(f'La división de {numero1} entre {numero2} es {division}.')
Resultado en la consola
La división de 10 entre 3 es 3.3333333333333335.
Ahora que ya sabes lo más básico en matemáticas de Python, vamos a subir un poquito el nivel viendo unas cuantas cosas más.
El cálculo de potencias en Python
Pasemos a ver el operador para calcular potencias de Python. El operador se escribe con dos asteriscos juntos "**".
numero1 = 2
numero2 = 10
potencia = numero1 ** numero2
print(f'{numero1} elevado a {numero2} es {potencia}.')
Resultado en la consola
2 elevado a 10 es 1024.
Por si no sabes de potencias, aquí tienes el equivalente para realizar esto con la multiplicación convencional:
potencia = 2 ** 10
multiplicacion = 2 * 2 * 2 * 2 * 2 *2 * 2 * 2 * 2 * 2
print(potencia)
print(multiplicacion)
Resultado en la consola
1024
1024
Como puedes ver, para multiplicaciones repetitivas como esta, es muy útil.
El operador módulo de Python
El operador módulo de Python nos permite devolver el resto de una división.
Mira el siguiente código. Fíjate en la variable "division_resto", la cual lleva el operador módulo con el símbolo '%'.
division_resultado = 10 / 3
division_resto = 10 % 3
print(f'El resultado de la división es {division_resultado}.')
print(f'Nos queda un resto de {division_resto}')
Resultado en la consola
El resultado de la división es 3.3333333333333335.
Nos queda un resto de 1
El primer print() imprime el resultado de una división.
En cambio, con el operador módulo realiza la división y nos da el resto de esta. 10 dividido entre 3 es 3 (redondeando) y nos queda 1 de resto.
Diferencia entre el operador de división y floor division de Python
La división normal de Python (/), nos devuelve valores con muchos decimales. Si queremos en algún momento hacer divisiones y obtener solo el resultado con números enteros, utilizaremos el operador floor division (//).
division_resultado = 10 // 3
print(f'El resultado de la división es {division_resultado}.')
Resultado en la consola
El resultado de la división es 3.
Ahora, me da un entero en lugar de 3.33333...
Redondeo a enteros con round de python
Podemos usar el método round() de Python para devolver resultados de números enteros.
En este caso, estoy haciendo la división normal, pero al envolverla en un round(), me devuelve un entero y no 3.33333...
La ventaja de esto frente a floor division, es que además de divisiones, lo puedes emplear con cualquier valor u operación aritmética.
division_resultado = round(10 / 3)
print(f'El resultado de la división es {division_resultado}.')
Resultado en la consola
El resultado de la división es 3.
No te pierdas todo el contenido de este curso y más cosas sobre Python.