¿Qué son los operadores en programación?
Cómo utilizar operadores aritméticos, de comparación, lógicos, asignación, pertenencia e identidad y cómo controlar el orden de las operaciones.
Los operadores aparecen constantemente al programar. Los utilizamos para sumar precios, comparar edades, comprobar condiciones, actualizar variables y realizar muchas otras operaciones sobre los datos de un programa.
¿Qué es un operador?
Un operador es un símbolo o palabra que indica al programa qué operación debe realizar sobre uno o más valores.
Por ejemplo:
10 + 5
El símbolo + es el operador. Su función en este caso es
sumar los valores situados a ambos lados.
El resultado será:
15
Operadores y operandos
Los valores sobre los que actúa un operador reciben el nombre de operandos.
precio * cantidad
En esta expresión:
*es el operador.precioes un operando.cantidades otro operando.
Los operandos pueden ser valores escritos directamente, variables o incluso expresiones más complejas.
Operadores aritméticos
Los operadores aritméticos permiten realizar cálculos matemáticos.
+suma.-resta.*multiplicación./división.//división entera.%módulo o residuo.**potencia.
Suma, resta y multiplicación
print(10 + 5)
print(10 - 5)
print(10 * 5)
Los resultados son:
15
5
50
División
resultado = 10 / 4
print(resultado)
En Python, / realiza una división y devuelve:
2.5
División entera
print(10 // 4)
El resultado es:
2
Módulo
El operador % permite obtener el residuo de una
división.
print(10 % 3)
El resultado es 1.
Una aplicación habitual consiste en comprobar si un número es par:
numero = 8
if numero % 2 == 0:
print("El número es par")
Potencia
print(2 ** 3)
Esto representa 2 elevado a 3 y devuelve 8.
Operadores de comparación
Los operadores de comparación permiten comparar valores.
El resultado normalmente será True o
False.
==igual a.!=diferente de.>mayor que.<menor que.>=mayor o igual que.<=menor o igual que.
edad = 20
print(edad >= 18)
print(edad == 20)
print(edad < 18)
El resultado será:
True
True
False
Estas comparaciones son fundamentales para construir estructuras condicionales.
Igualdad no es asignación
Este es uno de los conceptos más importantes para quien empieza a programar.
edad = 20
= asigna el valor 20 a la variable.
edad == 20
== pregunta si el valor de edad es igual
a 20.
Operadores lógicos
Los operadores lógicos permiten trabajar con varias condiciones.
En Python los principales son and, or y
not.
and
El resultado será verdadero cuando las condiciones necesarias sean verdaderas.
edad = 20
tiene_entrada = True
puede_entrar = edad >= 18 and tiene_entrada
print(puede_entrar)
El resultado es True.
or
or produce un resultado verdadero cuando al menos una
de las condiciones es verdadera.
es_admin = False
es_editor = True
puede_editar = es_admin or es_editor
print(puede_editar)
El resultado es True.
not
not invierte un valor booleano.
bloqueado = False
print(not bloqueado)
El resultado será True.
Operadores de asignación
El operador = permite asignar un valor a una variable.
puntos = 10
También existen operadores que realizan una operación y guardan el resultado en la misma variable.
+=suma y asigna.-=resta y asigna.*=multiplica y asigna./=divide y asigna.
Por ejemplo:
puntos = 10
puntos += 5
print(puntos)
El resultado será 15.
Es equivalente, en este caso, a escribir:
puntos = puntos + 5
Operadores de pertenencia
Python incluye in y not in para comprobar
si un elemento pertenece o no a una colección.
lenguajes = [
"Python",
"JavaScript",
"Java"
]
print("Python" in lenguajes)
print("C++" in lenguajes)
El resultado será:
True
False
También podemos comprobar que un elemento no esté presente:
print("C++" not in lenguajes)
El resultado será True.
Operadores de identidad
Python dispone de is e is not para
comprobar identidad.
Es importante no confundir identidad con igualdad.
resultado = None
if resultado is None:
print("No existe un resultado")
Una aplicación habitual de is consiste precisamente en
comprobar si un valor es None.
== compara valores. is comprueba si dos
referencias corresponden al mismo objeto. No deben utilizarse
indistintamente.
Prioridad de operadores
Cuando una expresión contiene varios operadores, Python sigue reglas de precedencia para determinar qué operación se realiza primero.
resultado = 2 + 3 * 4
print(resultado)
La multiplicación se realiza antes que la suma:
3 * 4 = 12
2 + 12 = 14
Por lo tanto, el resultado es 14.
Utilizar paréntesis
resultado = (2 + 3) * 4
Ahora primero se calcula 2 + 3, por lo que el resultado
será 20.
Aunque conozcas la precedencia de operadores, utilizar paréntesis puede hacer que una expresión compleja sea mucho más fácil de entender.
Ejemplo práctico: calcular una compra
Podemos combinar distintos operadores para resolver una situación más realista.
precio = 15000
cantidad = 3
descuento = 10
subtotal = precio * cantidad
monto_descuento = subtotal * descuento / 100
total = subtotal - monto_descuento
print(f"Subtotal: ₡{subtotal}")
print(f"Descuento: ₡{monto_descuento}")
print(f"Total: ₡{total}")
Primero utilizamos * para calcular el subtotal:
15000 * 3 = 45000
Después calculamos el 10 % de descuento:
45000 * 10 / 100 = 4500
Finalmente restamos el descuento:
45000 - 4500 = 40500
El precio final es ₡40.500.
Agregar una condición
Ahora podemos combinar operadores aritméticos, de comparación y lógicos:
es_cliente = True
if total >= 40000 and es_cliente:
print("Compra elegible para beneficio")
Aquí utilizamos >= para comparar y
and para combinar dos condiciones.
Errores comunes con operadores
Confundir = con ==
= asigna un valor y == realiza una
comparación.
Ignorar la prioridad de las operaciones
Una expresión puede producir un resultado diferente al esperado si no tenemos en cuenta qué operación se ejecuta primero.
Confundir and con or
Utiliza and cuando necesites que se cumplan varias
condiciones y or cuando sea suficiente con que se
cumpla al menos una.
Utilizar is como reemplazo de ==
Aunque en ciertos ejemplos parezcan producir el mismo resultado,
tienen propósitos diferentes. Para comparar valores normalmente
utilizamos ==.
Dividir entre cero
resultado = 10 / 0
Esta operación provoca un error. Cuando el divisor proviene de datos externos, conviene comprobarlo antes.
divisor = 0
if divisor != 0:
resultado = 10 / divisor
else:
print("No se puede dividir entre cero")
Compruébalo tú mismo
Crea un programa con dos variables llamadas numero1 y
numero2.
El programa debe mostrar:
- La suma.
- La resta.
- La multiplicación.
- Si ambos números son iguales.
- Cuál de los dos es mayor.
Intenta resolverlo antes de ver la solución.
Ver una posible solución
numero1 = 10
numero2 = 5
print("Suma:", numero1 + numero2)
print("Resta:", numero1 - numero2)
print("Multiplicación:", numero1 * numero2)
print(
"¿Son iguales?",
numero1 == numero2
)
if numero1 > numero2:
print("El primer número es mayor")
elif numero2 > numero1:
print("El segundo número es mayor")
else:
print("Los números son iguales")
Añade la división, pero evita que el programa intente dividir entre cero.
Preguntas frecuentes
¿Cuál es la diferencia entre = y ==?
= se utiliza para asignar un valor a una variable.
== compara dos valores para comprobar si son
iguales.
¿Qué devuelve un operador de comparación?
Una comparación produce normalmente un valor booleano:
True o False.
¿Para qué sirven los operadores lógicos?
Permiten combinar o modificar condiciones. En Python los
principales son and, or y
not.
Cómo se combinan los operadores en un programa
En programas reales es habitual utilizar varios operadores dentro de una misma expresión. Por ejemplo, una aplicación puede calcular un total con operadores aritméticos y después utilizar operadores de comparación y lógicos para decidir si se cumple una condición.
Una tienda podría comprobar si el total de una compra supera cierto monto y si el usuario tiene una promoción disponible. La operación matemática calcula el total; las comparaciones y operadores lógicos ayudan a tomar la decisión.
Precedencia y paréntesis
Cuando una expresión contiene varias operaciones, el lenguaje aplica reglas de precedencia. Para principiantes, utilizar paréntesis cuando exista posibilidad de confusión hace que la intención sea más clara y reduce errores de interpretación.
Errores frecuentes
- Confundir asignación con comparación.
- Esperar el mismo comportamiento entre tipos de datos diferentes.
- Crear expresiones demasiado largas y difíciles de leer.
- No comprobar casos límite, como valores vacíos o cero.
Divide una expresión compleja en pasos y guarda resultados intermedios con nombres claros. Un código fácil de leer suele ser también más sencillo de depurar.
Conclusión
Los operadores permiten realizar cálculos, comparar valores, combinar condiciones y modificar datos dentro de un programa.
Comprender la diferencia entre operadores aritméticos, de comparación, lógicos y de asignación es fundamental para construir expresiones correctamente.
También es importante entender la precedencia, los operadores de pertenencia y la diferencia entre igualdad e identidad. Estos conceptos aparecerán constantemente cuando trabajes con variables, condicionales, bucles y funciones.
ByteNova
Proyecto educativo creado por Dylan Estrada. ByteNova publica contenido sobre programación, desarrollo web, inteligencia artificial y ciberseguridad con un enfoque claro para principiantes y revisión editorial continua.
Conoce más sobre ByteNova →