Operaciones básicas
Aritméticas, de comparación, lógicas y de asignación — los cuatro pilares del cálculo en Python. Toda fórmula, toda decisión y todo filtro que construyas parte de acá.
Concepto teórico
Los operadores son símbolos que le dicen a Python qué hacer con los datos. Sin operadores, un programa no puede calcular nada: no puede sumar un saldo, comparar dos scores, ni decidir si un cliente califica para un crédito. Hay cuatro familias que necesitás dominar y que vamos a cubrir en profundidad.
Operadores aritméticos
Son los más intuitivos porque son las operaciones matemáticas que ya conocés. Pero Python agrega tres que probablemente no hayas visto:
| Operador | Nombre | Ejemplo | Resultado | ¿Para qué sirve? |
|---|---|---|---|---|
+ |
Suma | 15 + 4 |
19 |
Sumar montos, acumular totales |
- |
Resta | 15 - 4 |
11 |
Calcular diferencias, margen |
* |
Multiplicación | 15 * 4 |
60 |
Precio × cantidad, tasa × capital |
/ |
División | 15 / 4 |
3.75 |
Promedios, ratios. Siempre devuelve float |
// |
División entera | 15 // 4 |
3 |
Cuotas enteras, lotes completos |
% |
Módulo (resto) | 15 % 4 |
3 |
¿Es par? ¿Es múltiplo? Distribuir sobrantes |
** |
Potencia | 2 ** 10 |
1024 |
Interés compuesto: capital × (1+tasa)**n |
10 / 2 devuelve 5.0, no 5. Si necesitás un entero, usá //
(división entera) o int(). Esto importa cuando construís IDs, índices o contadores que deben ser
enteros.
El operador % (módulo) merece atención especial. Devuelve el resto de una
división. Sus usos más comunes en análisis de datos:
- Verificar paridad:
n % 2 == 0→ el número es par - Verificar múltiplos:
n % 12 == 0→ el número es múltiplo de 12 (útil para meses) - Distribuir sobrantes: si tenés $17,000 para repartir entre 5 personas, cada uno recibe
17000 // 5 = $3,400y sobran17000 % 5 = $0 - Ciclos:
i % 3genera la secuencia 0, 1, 2, 0, 1, 2... ideal para alternar colores o categorías
El operador ** (potencia) es tu herramienta para interés compuesto. La fórmula
financiera más importante que vas a usar es:
monto_final = capital * (1 + tasa) ** periodos
Por ejemplo, $100,000 al 5% mensual durante 12 meses: 100000 * (1.05) ** 12 = $179,585.63. Esa
sola línea reemplaza una planilla entera de Excel.
7 / 2 esperando
3, vas a obtener 3.5. Si calculás 7 // 2 esperando 3.5, vas
a obtener 3. Siempre pensá cuál necesitás antes de escribir la línea.
Precedencia de operadores (orden de evaluación)
Así como en matemática primero va la multiplicación y después la suma, Python sigue un orden estricto:
**(potencia) — se evalúa primero*,/,//,%— segundo+,-— último
Si hay empate de nivel, se evalúa de izquierda a derecha (excepto ** que va de
derecha a izquierda). Cuando tengas dudas, usá paréntesis. No es solo por claridad — es por
supervivencia. (precio * cantidad) * (1 + iva) es inequívoco;
precio * cantidad * 1 + iva da un resultado completamente distinto.
resultado = (base * tasa) + comision es más claro que
resultado = base * tasa + comision, aunque den lo mismo.
Operadores de comparación
Las comparaciones devuelven True o False. Son la base de toda decisión que tome tu
programa:
| Operador | Significado | Ejemplo | Resultado |
|---|---|---|---|
== |
Igual a | 5 == 5 |
True |
!= |
Distinto de | 5 != 3 |
True |
> |
Mayor que | 10 > 5 |
True |
< |
Menor que | 3 < 7 |
True |
>= |
Mayor o igual | 5 >= 5 |
True |
<= |
Menor o igual | 4 <= 3 |
False |
= en vez de ==. =
es asignación (guardar un valor), == es comparación (preguntar si son iguales). Escribir
if saldo = 0 es un error de sintaxis en Python. Lo correcto es if saldo == 0.
Python permite comparaciones encadenadas, algo que otros lenguajes no soportan:
18 <= edad <= 65 verifica que la edad esté en ese rango. Es equivalente a
edad >= 18 and edad <= 65 pero mucho más legible.
Operadores lógicos
Los operadores lógicos combinan condiciones booleanas:
and— ambas condiciones deben ser True.True and True → True. Cualquier otra combinación →False.or— al menos una debe ser True.False or False → False. Cualquier otra combinación →True.not— invierte el valor.not True → False.
(score >= 650) and (ingreso >= 80000) and (not tiene_deuda_vencida). Las tres condiciones deben
cumplirse. Si alguna falla, se rechaza. Eso es un and encadenado con un not.
Python evalúa and/or con evaluación de cortocircuito: si la primera
condición de un and es False, ni siquiera mira la segunda (ya sabe que el resultado es
False). Esto importa para eficiencia y para evitar errores: if lista and lista[0] > 10
es seguro porque si lista está vacía (falsy), no intenta acceder a lista[0].
Operadores de asignación compuesta
Son atajos para modificar una variable:
| Atajo | Equivale a | Uso típico |
|---|---|---|
x += 5 |
x = x + 5 |
Acumular totales en un bucle |
x -= 5 |
x = x - 5 |
Descontar de un saldo |
x *= 1.05 |
x = x * 1.05 |
Aplicar interés mensual |
x /= 2 |
x = x / 2 |
Dividir un monto |
x //= 3 |
x = x // 3 |
Repartir en cuotas enteras |
x %= 10 |
x = x % 10 |
Quedarse con el último dígito |
x **= 2 |
x = x ** 2 |
Elevar al cuadrado |
saldo += deposito es como cuando el cajero
le suma un depósito a tu saldo. saldo -= extraccion es cuando retirás plata.
saldo *= 1.03 es cuando el banco te acredita el interés mensual del plazo fijo.
Ejemplos explicados paso a paso
Ejemplo 1: Aritmética básica y precedencia
Fijate cómo el orden de operaciones afecta el resultado. La línea 4 y 5 dan resultados muy distintos según dónde pongas los paréntesis.
Hacé clic en ▶ Ejecutar
Ejemplo 2: Módulo para problemas reales
El operador % resuelve problemas que parecen complicados en una sola línea.
Hacé clic en ▶ Ejecutar
Ejemplo 3: Interés compuesto y simulación financiera
La potencia (**) convierte una fórmula financiera compleja en una sola línea de Python.
Hacé clic en ▶ Ejecutar
Ejemplo 4: Comparaciones y lógicos en evaluación crediticia
Así funciona un motor de decisión simplificado: combina condiciones con
and/or/not.
Hacé clic en ▶ Ejecutar
Ejemplo 5: Asignación compuesta — simulando movimientos de cuenta
Hacé clic en ▶ Ejecutar
Referencia rápida
| Categoría | Operadores | Devuelve |
|---|---|---|
| Aritméticos | + - * / // % ** |
Número (int o float) |
| Comparación | == != > < >= <= |
True o False |
| Lógicos | and or not |
True o False |
| Asignación | = += -= *= /= //= %= **= |
Nada (modifica la variable) |
| Identidad | is, is not |
True o False |
| Membresía | in, not in |
True o False |
Ejercicios
Ejercicio 1: Calculadora aritmética
Dados a = 45 y b = 7, imprimí los 7 resultados aritméticos (suma, resta,
multiplicación, división, división entera, módulo y potencia) en líneas separadas. El output debe incluir la
línea Resto: 3.
Hacé clic en ▶ Ejecutar
Ejercicio 2: Precio con IVA
Un producto cuesta $8,500. Calculá el precio con IVA (21%) e imprimilo como
Con IVA: 10285.0.
Hacé clic en ▶ Ejecutar
Ejercicio 3: ¿Par o impar?
Dado numero = 137, imprimí impar si es impar o par si es par. Usá el
operador %.
Hacé clic en ▶ Ejecutar
Ejercicio 4: Cuota simple de un préstamo
Capital: $1,200,000, tasa anual: 65%, plazo: 12 meses. Calculá el
interés total (capital × tasa), el monto total (capital + interés) y la cuota
mensual (total / plazo). Imprimí la cuota redondeada a 2 decimales. El output debe incluir
165000.
Hacé clic en ▶ Ejecutar
Ejercicio 5: Evaluación booleana
Un cliente tiene score = 620, ingreso = 95000 y deuda_vencida = True.
Evaluá si califica para un crédito: score >= 600 AND ingreso >= 80000 AND deuda_vencida sea
False. Imprimí Rechazado o Aprobado.
Hacé clic en ▶ Ejecutar
Ejercicio 6: Distribuir un bono entre empleados
Tenés $2,350,000 para repartir equitativamente entre 7 empleados. Calculá cuánto
recibe cada uno (entero, sin centavos) y cuánto sobra. Imprimí ambos valores. El output debe incluir
Sobrante: 4.
Hacé clic en ▶ Ejecutar
Ejercicio 7: Interés compuesto del plazo fijo
Invertís $800,000 en un plazo fijo a TNA 78% por 90 días. La TEM (tasa
efectiva mensual) es TNA / 12. Calculá el monto final con interés compuesto a 3 meses. Imprimí el
monto final redondeado a 2 decimales. El output debe incluir 966 (parte de los miles).
Hacé clic en ▶ Ejecutar
Ejercicio 8: Ratio cuota/ingreso con decisión
Un cliente gana $420,000. La cuota del préstamo sería $155,000. Calculá el ratio
cuota/ingreso en porcentaje. Si supera 30%, imprimí RECHAZADO - ratio XX.X%. Si no,
APROBADO - ratio XX.X%.
Hacé clic en ▶ Ejecutar
Ejercicio 9: Simulación de caja de ahorro
Empezás con saldo = 500000. Aplicá estos movimientos en orden usando asignación compuesta:
+250000 (sueldo), -85000 (alquiler), -32000 (servicios), *1.003 (rendimiento diario), -15000 (compras).
Imprimí el saldo final. Debe incluir 619.
Hacé clic en ▶ Ejecutar
Ejercicio 10: Motor de evaluación crediticia completo
Evaluá a este cliente: edad=45, ingreso=280000, score=695,
deuda_vencida=False, antiguedad=8 años. La cuota del crédito sería
$72,000.
Reglas: (1) Edad entre 18-65, (2) Ingreso >= 100000, (3) Score >= 650, (4) Sin deuda vencida, (5) Antigüedad >= 2 años, (6) Ratio cuota/ingreso < 35%.
Imprimí cada validación con ✓ o ✗, el ratio en porcentaje, y si el crédito está APROBADO o
RECHAZADO.
Hacé clic en ▶ Ejecutar
Resumen y conexión
- Dominás los 4 grupos de operadores: aritméticos, comparación, lógicos y asignación compuesta.
- Sabés que
/siempre devuelve float,//trunca,%devuelve el resto y**calcula potencias. - Entendés precedencia y por qué los paréntesis explícitos te salvan bugs.
- Podés construir reglas de negocio combinando
and,orynot. - Usás asignación compuesta (
+=,*=) para simular movimientos de cuenta.
En la siguiente lección (06 · Condicionales) vas a aprender a usar
if/elif/else para que tu código tome decisiones basadas en estas
comparaciones. Todo lo que practicaste acá de True/False es la base para los
condicionales.
Recursos: docs.python.org — Numeric Types · Tabla oficial de precedencia