Los operadores son símbolos que le indican al intérprete que realice una operación específica, como aritmética, comparación, lógica, etc.

Estos son los diferentes tipos de operadores en Python:

  1. Operadores aritméticos
  2. Operadores relacionales
  3. Operadores Bit a Bit
  4. Operadores de asignación
  5. Operadores lógicos
  6. Operadores de pertenencia
  7. Operadores de identidad

Operadores Aritméticos

Un operador aritmético toma dos operandos como entrada, realiza un cálculo y devuelve el resultado.

Considera la expresión, “a = 2 + 3”. Aquí, 2 y  3 son los operandos y  + es el operador aritmético. El resultado de la operación se almacena en la variable a.

Operador Descripción Uso
+ Realiza Adición entre los operandos 12 + 3 = 15
- Realiza Substracción entre los operandos 12 - 3 = 9
* Realiza Multiplicación entre los operandos 12 * 3 = 36
/ Realiza División entre los operandos 12 / 3 = 4
% Realiza un módulo entre los operandos 16 % 3 = 1
** Realiza la potencia de los operandos 12 ** 3 = 1728
// Realiza la división con resultado de número entero 18 // 5 = 3

Nota: Para obtener el resultado en tipo flotante, uno de los operandos también debe ser de tipo flotante.

ADVERTISEMENT

Operadores Relacionales

Un operador relacional se emplea para comparar y establecer la relación entre ellos. Devuelve un valor booleano (true o false) basado en la condición.

Operador Descripción Uso
> Devuelve True si el operador de la izquierda es mayor que el operador de la derecha 12 > 3 devuelve True
< Devuelve True si el operador de la derecha es mayor que el operador de la izquierda 12 < 3 devuelve False
== Devuelve True si ambos operandos son iguales 12 == 3 devuelve False
>= Devuelve True si el operador de la izquierda es mayor o igual que el operador de la derecha 12 >= 3 devuelve True
<= Devuelve True si el operador de la derecha es mayor o igual que el operador de la izquierda 12 <= 3 devuelve False
!= Devuelve True si ambos operandos no son iguales 12 != 3 devuelve True

Operadores Bit a Bit

Un operador bit a bit realiza operaciones en los operandos bit a bit.

Consideremos a = 2 (en binario = 10) y b = 3 (en binario = 11) para los siguientes casos.

Operador Descripción Uso
& Realiza bit a bit la operación AND en los operandos a & b = 2 (Binario: 10 & 11 = 10)
| Realiza bit a bit la operación OR en los operandos a | b = 3 (Binario: 10 | 11 = 11)
^ Realiza bit a bit la operación XOR en los operandos a ^ b = 1 (Binario: 10 ^ 11 = 01)
~ Realiza bit a bit la operación NOT bit a bit. Invierte cada bit en el operando ~a = -3 (Binario: ~(00000010) = (11111101))
>> Realiza un desplazamiento a la derecha bit a bit. Desplaza los bits del operador de la izquierda a la derecha tantos bits como indica el operador de la derecha a >> b = 0 (Binario: 00000010 >> 00000011 = 0)
<< Realiza un desplazamiento a la izquierda bit a bit. Desplaza los bits del operando de la izquierda a la izquierda tantos bits como especifique el operador de la derecha a << b = 16 (Binario: 00000010 << 00000011 = 00001000)
ADVERTISEMENT

Operadores de Asignación

Se utiliza un operador de asignación para asignar valores a una variable. Esto generalmente se combina con otros operadores (como aritmética, bit a bit) donde la operación se realiza en los operandos y el resultado se asigna al operando izquierdo.

Considera los siguientes ejemplos,

a = 18. Aquí = es un operador de asignación, y el resultado se almacena en la variable a.

a + = 10. Aquí += es un operador de asignación, y el resultado se almacena en la variable a. Es lo mismo que a = a + 10.

Operador Descripción
= a = 5. El valor 5 es asignado a la variable a
+= a += 5 es equivalente a a = a + 5
-= a -= 5 es equivalente a a = a - 5
*= a *= 3 es equivalente a a = a * 3
/= a /= 3 es equivalente a a = a / 3
%= a %= 3 es equivalente a a = a % 3
**= a **= 3 es equivalente a a = a ** 3
//= a //= 3 es equivalente a a = a // 3
&= a &= 3 es equivalente a a = a & 3
|= a |= 3 es equivalente a a = a | 3
^= a ^= 3 es equivalente a a = a ^ 3
>>= a >>= 3 es equivalente a a = a >> 3
<<= a <<= 3 es equivalente a a = a << 3

Operadores Lógicos

Se utiliza un operador lógico para tomar una decisión basada en múltiples condiciones. Los operadores lógicos utilizados en Python son  and, or y not.

Operador Descripción Uso
and Devuelve True si ambos operandos son True a and b
or Devuelve True si alguno de los operandos es True a or b
not Devuelve True si alguno de los operandos False not a
ADVERTISEMENT

Operadores de Pertenencia

Un operador de pertenencia se emplea para identificar pertenencia en alguna secuencia (listas, strings, tuplas).

in y not in son operadores de pertenencia.

in devuelve True si el valor especificado se encuentra en la secuencia. En caso contrario devuelve False.

not in devuelve True si el valor especificado no se encuentra en la secuencia. En caso contrario devuelve False.

a = [1,2,3,4,5]
  
#Esta 3 en la lista a?
print 3 in a # Muestra True 
  
#No está 12 en la lista a?
print 12 not in a # Muestra True
  
str = "Hello World"
  
#Contiene World el string str?
print "World" in str # Muestra True
  
#Contiene world el string str? (nota: distingue mayúsculas y minúsculas)
print "world" in str # Muestra False  

print "code" not in str # Muestra True

Operadores de Identidad

Un operador de identidad se emplea para comprobar si dos variables emplean la misma ubicación en memoria.

is y is not son operadores de identidad.

is devuelve True si los operandos se refieren al mismo objeto. En caso contrario devuelve False.

is not devuelve True si los operandos no se refieren al mismo objeto. En caso contrario devuelve False.

Ten en cuenta que dos valores, cuando son iguales, no implica necesariamente que sean idénticos.

a = 3
b = 3  
c = 4
print a is b # muestra True
print a is not b # muestra False
print a is not c # muestra True

x = 1
y = x
z = y
print z is 1 # muestra True
print z is x # muestra True

str1 = "FreeCodeCamp"
str2 = "FreeCodeCamp"

print str1 is str2 # muestra True
print "Code" is str2 # muestra False

a = [10,20,30]
b = [10,20,30]

print a is b # muestra False (ya que las listas son objetos mutables en Python)  

Traducido del artículo Basic Operators in Python With Examples