Codev School

Operadores Básicos en Python con ejemplos

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.

OPERADORDESCRIPCIÓNUSO
+Realiza Adición entre los operandos12 + 3 = 15
Realiza Substracción entre los operandos12 – 3 = 9
*Realiza Multiplicación entre los operandos12 * 3 = 36
/Realiza División entre los operandos12 / 3 = 4
%Realiza un módulo entre los operandos16 % 3 = 1
**Realiza la potencia de los operandos12 ** 3 = 1728
//Realiza la división con resultado de número entero18 // 5 = 3

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

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.

OPERADORDESCRIPCIÓNUSO
>Devuelve True si el operador de la izquierda es mayor que el operador de la derecha12 > 3 devuelve True
<Devuelve True si el operador de la derecha es mayor que el operador de la izquierda12 < 3 devuelve False
==Devuelve True si ambos operandos son iguales12 == 3 devuelve False
>=Devuelve True si el operador de la izquierda es mayor o igual que el operador de la derecha12 >= 3 devuelve True
<=Devuelve True si el operador de la derecha es mayor o igual que el operador de la izquierda12 <= 3 devuelve False
!=Devuelve True si ambos operandos no son iguales12 != 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.

OPERADORDESCRIPCIÓNUSO
&Realiza bit a bit la operación AND en los operandosa & b = 2 (Binario: 10 & 11 = 10)
|Realiza bit a bit la operación OR en los operandosa | b = 3 (Binario: 10 | 11 = 11)
^Realiza bit a bit la operación XOR en los operandosa ^ 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 derechaa >> 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 derechaa << b = 16 (Binario: 00000010 << 00000011 = 00001000)

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.

OPERADORDESCRIPCIÓ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  andor y not.

OPERADORDESCRIPCIÓNUSO
andDevuelve True si ambos operandos son Truea and b
orDevuelve True si alguno de los operandos es Truea or b
notDevuelve True si alguno de los operandos Falsenot a

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)  

Joan Manuel Gregorio Pérez

Ingeniero en software, Magister Gestión de la Tecnología Educativa, amante de la tecnología y videojuegos, docente, padre y gamers

Publicaciones relacionadas

Botón volver arriba
No data found.