Tipos de operadores en Python
Table of Contents
ToggleOperadores aritméticos
Los operadores aritméticos son los más comunes que nos podemos encontrar, y nos permiten realizar operaciones matemáticas sencillas.
Podemos detallarlos de la siguiente manera:
Operador | Nombre | Ejemplo | Resultado |
+ | Suma | 4 + 3 | 7 |
– | Resta | 8 – 2 | 6 |
* | Multiplicación | 2 * 5 | 10 |
/ | División | 12 / 6 | 2 |
% | Módulo (Resto) | 10 % 3 | 1 |
** | Exponente | 2 ** 3 | 8 |
// | División Entera | 10 // 3 | 3 |
Jerarquía de Operaciones
La jerarquía representa el orden en que deben realizarse dichas operaciones. Veamos este orden:
Paréntesis (): Lo primero que realiza Python, es una operación de lo que está dentro de los paréntesis.
Exponencial x^n: Si el programa detecta un exponencial, es el segundo proceso que realiza.
Multiplicación y división * //: Ocupa el penúltimo escalón de la operación.
Suma y resta + –: Inicia por la izquierda.
Operadores asignación
Los operadores de asignación nos permiten realizar una operación y almacenar su resultado en la variable inicial. Podemos ver cómo realmente el más importante es el igual (=). El resto son abreviaciones de otros operadores que habíamos visto con anterioridad. Estos operadores no son más que atajos para escribir de manera más corta, y asignar su resultado a la variable inicial.
El operador += en x+=1 es equivalente a x = x + 1. Cabe aclarar que NO existe el operador ++ como si ocurre en otros lenguajes.
Estos son:
Operador | Ejemplo: si x = 5 | Equivalente | Resultado |
= | x = 5 | x = 5 | 5 |
+= | x += 2 | x = x + 2 | 7 |
-= | x -= 2 | x = x – 2 | 3 |
*= | x *= 2 | x = x * 2 | 10 |
/= | x /= 2 | x = x / 2 | 2.5 |
%= | x %= 2 | x = x % 2 | 1 |
//= | x //= 2 | x = x // 2 | 2 |
**= | x **= 2 | x = x ** 2 | 25 |
Operadores relacionales
Los operadores relacionales, o también llamados de comparación, nos permiten saber la relación existente entre dos variables. Se usan para saber si, por ejemplo, un número es mayor o menor que otro. Dado que estos operadores indican si se cumple o no una operación, el valor que devuelven es True o False.
Ejemplo de estos son los siguientes:
Operador | Nombre | Ejemplo: si x=5 | Resultado |
== | Igual | x == 9 | False |
!= | Distinto | x != 3 | True |
> | Mayor | x > 5 | False |
< | Menor | x < 7 | True |
>= | Mayor o igual | x >= 5 | True |
<= | Menor o igual | x <= 3 | False |
Operadores lógicos
Los operadores lógicos también nos permiten saber la relación existente entre dos variables. Se usan para una acción específica, por ejemplo, saber si un número es mayor o menor que otro. Dado que estos operadores indican si se cumple o no una operación, el valor que devuelven es True o False.
Podemos dividirlos en los siguientes tres:
Operador | Acción |
and | Devuelve True si ambos elementos son True |
or | Devuelve True si al menos un elemento es True |
not | Devuelve el contrario, True si es Falso y viceversa |
Operadores especiales
Cuando hablamos de tipos de operadores en Python, no solo podemos estudiar o conocer los básicos. Ya que estos también se suelen usar en otros lenguajes o sistemas operativos. También existen operadores especiales que debemos tener en cuenta, ya que hay ciertos detalles que suelen confundirse en Python con respecto a otros lenguajes. Veamos a continuación:
Operador de identidad
El operador de identidad nos indica si dos variables hacen referencia al mismo objeto. Esto implica que si dos variables distintas tienen el mismo id(), misma dirección de memoria, el resultado de aplicar el operador is sobre ellas será True.
a = 10
b = 10
a is b
Out:
True
Esto es debido a que Python reutiliza el mismo objeto que almacena el valor 10 para ambas variables. De hecho, si usamos la función id(), podemos ver que el objeto es el mismo.
id(a)
Out:
140736522871880
id(b)
Out:
140736522871880
Definido el operador is, es trivial definir is not porque es exactamente lo contrario.
Operador de pertenencia (membresía)
El operador de pertenencia in permite saber si un elemento está contenido en una secuencia. Por ejemplo, si un número está contenido en una lista de números. O una key (clave) en un diccionario.
num = [1,2,3]
3 in num
Out:
True
10 in num
Out:
False
empleados = {«Gonzalo»:10,»Sofía»:3}
«Gonzalo» in empleados
Out:
True
Por último, el operador not in realiza lo contrario al operador in. Verifica que un elemento no está contenido en la secuencia.
Operador de Walrus
El operador walrus se introdujo en la versión Python 3.8, y se trata de un operador de asignación con una funcionalidad extra. Se representa con dos puntos seguidos de un igual (:=), lo que tiene un parecido a una morsa, siendo ”:” los ojos y ”=” los colmillos, por lo que de ahí viene su nombre (walrus significa morsa en inglés).
Ejemplo:
dato = «Hola mundo!»
print(dato)
Out:
Hola mundo!
Con walrus podemos simplificar las dos líneas de código anterior en tan solo una. (Asignación y salida por pantalla en una sola línea)
print(dato:=»Hola mundo!»)
Out:
Hola mundo!
Operador a nivel bit o bitwise
Los operadores a nivel de bit son operadores que actúan sobre números enteros, pero usando su representación binaria. Sin embargo, estos operadores no se usan tan frecuentemente como los otros. Su uso puede ser más empleado en lenguajes de bajo nivel, y Python no es un lenguaje de esas características. Pero no está de más conocerlos.
Operador | Acción |
| | OR bit a bit |
& | AND bit a bit |
– | NOT bit a bit |
^ | XOR bit a bit |
>> | Desplazamiento bit a la derecha |
>> | Desplazamiento bit a la izquierda |
Atención:
Estos tipos de operadores en Python no se emplean para reemplazar al and o al or. Esto se debe a que los tipos de operadores bitwise no son como los lógicos, los cuales acostumbramos a usar. En otras palabras, podríamos decir que estos son especiales, ya que trabajan a nivel bit. Por tanto, ya que no son de uso habitual, dejamos en claro que estos NO reemplazan a los lógicos.