Operadores en Python: 4-. matemática y lógica

Los operadores se utilizan para realizar acciones en variables y sus valores. Pueden ser aritméticas, como sumas, restas, multiplicaciones, divisiones, u operaciones lógicas, como comparaciones.
Python los divide en los siguientes grupos:
- Aritméticos
- Asignación
- Comparación
- Lógicos
- De identidad
- De pertenencia
- Relativo a bits
Tipos de Operadores
Aritméticos
Los aritméticos se utilizan con valores numéricos para realizar operaciones matemáticas comunes:
| Operador | Nombre | Ejemplo |
| + | Suma | x + y |
| – | Resta | x – y |
| * | Multiplicación | x * y |
| / | División | x / y |
| % | Módulo | x % y |
| ** | Exponenciación | x ** y |
| // | Floor Division | x // y |
En el siguiente código podrás observar la función de cada operador. Puedes copiarlo y pegarlo directamente en GDB como vimos en el primer tutorial. También puedes experimentar cambiando los valores de ‘x’ y ‘y’ para que observes los diferentes resultados.
Por si no los has utilizado, las funciones módulo y floor division dan resultados de divisiones. Módulo arroja el residuo de x / y. Floor division señala el número entero de veces que cabe x en y sin incluir decimales. Más adelante veremos los usos que se le pueden dar a estos.
Asignación
Los operadores de asignación son usados para asignar valores a variables:
| Operador | Ejemplo | Equivale a |
| = | x = 5 | x = 5 |
| += | x += 3 | x = x + 3 |
| -= | x -= 3 | x = x – 3 |
| *= | x *= 3 | x = x * 3 |
| /= | x /= 3 | x = x / 3 |
| %= | x %= 3 | x = x % 3 |
| //= | x //= 3 | x = x // 3 |
| **= | x **= 3 | x = x ** 3 |
| &= | x &= 3 | x = x & 3 |
| |= | x |= 3 | x = x | 3 |
| ^= | x ^= 3 | x = x ^ 3 |
| >>= | x >>= 3 | x = x >> 3 |
| <<= | x <<= 3 | x = x << 3 |
Comparación
Los operadores de comparación se utilizan para evaluar y comparar dos valores.
| Operador | Nombre | Ejemplo |
| == | Igual | x == y |
| != | Distinto a | x != y |
| > | Mayor que | x > y |
| < | Menor que | x < y |
| >= | Mayor o igual que | x >= y |
| <= | Menor o igual que | x <= y |
Estos son muy útiles cuando trabajamos con condicionales como la estructura if , que veremos más adelante, en donde se toman diferentes acciones dependiendo si una variable tiene o no ciertas características.
Lógicos
Los operadores lógicos se usan para combinar sentencias condicionales, lo que quiere decir que puedes usar dos o más características para tu condición.
| Operador | Descripción | Ejemplo |
| and | Entrega verdadero (True) si ambas sentencias son correctas | x < 5 and x < 10 |
| or | Entrega verdadero (True) si ambas sentencias son correctas | x < 5 or x < 4 |
| not | Invierte el resultado entre verdadero y falso (True, False) | not(x < 5 and x < 10) |
De identidad
Estos operadores son usados para comparar objetos (valores), no si son iguales, pero si son de hecho el mismo objeto, con la misma ubicación de memoria.
| Operador | Descripción | Ejemplo |
| is | Entrega verdadero (True) si ambas variables son el mismo objeto | x is y |
| is not | Entrega verdadero (True) si las variables son un objeto distinto | x is not y |
Bitwise
Un operador bitwise se utiliza para realizar la comparación de números binarios.
| Símbolo | Nombre | Función |
| & | AND | Asigna 1 a cada bit si ambos son 1 |
| | | OR | Asigna 1 a cada bit si uno de los dos es 1 |
| ^ | XOR | Asigna 1 a cada bit si solo uno de los dos es 1 |
| ~ | NOT | Invierte todos los bits |
