Parte 11 — Orden de las operaciones
Python no siempre calcula de izquierda a derecha
Considera:
resultado = 10 + 5 * 2
print(resultado)Podríamos pensar:
10 + 5 = 15
15 × 2 = 30Pero Python muestra:
20Primero realiza la multiplicación:
5 × 2 = 10Después suma:
10 + 10 = 20Precedencia
Los operadores tienen un orden de prioridad.
Una versión simplificada es:
- Paréntesis.
- Potencias.
- Multiplicación, división, división entera y residuo.
- Suma y resta.
- Comparaciones.
- Operadores lógicos.
Ejemplo
resultado = 2 + 3 ** 2 * 4
print(resultado)Python calcula:
3 ** 2 = 9
9 * 4 = 36
2 + 36 = 38Resultado:
38Operadores con la misma prioridad
Cuando dos operadores tienen la misma prioridad, normalmente se procesan de izquierda a derecha.
resultado = 20 / 5 * 2
print(resultado)Primero:
20 / 5 = 4Después:
4 * 2 = 8Resultado:
8.0Las potencias son una excepción importante
Las potencias se agrupan de derecha a izquierda:
resultado = 2 ** 3 ** 2Python lo interpreta como:
2 ** (3 ** 2)Primero:
3 ** 2 = 9Después:
2 ** 9 = 512No necesitas utilizar expresiones tan confusas en MiniFinance.
La claridad es más importante que demostrar que puedes invocar matemáticas prohibidas.