Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> python

Guía Completa de Operadores en Python: Aritméticos, Lógicos, Comparación, Asignación, Bitwise y Precedencia

¿Qué Son los Operadores Lógicos en Python?

Los operadores lógicos en Python evalúan expresiones booleanas y devuelven True o False. Los tres operadores lógicos principales son and, or y not. Son indispensables para controlar el flujo con if, while y otras sentencias condicionales.

En este tutorial exploraremos el espectro completo de operadores en Python, incluyendo:

Operadores Aritméticos

Los operadores aritméticos realizan cálculos numéricos. Python soporta los operadores habituales: + (adición), - (sustracción), * (multiplicación), / (división real), // (división entera), % (módulo) y ** (exponenciación). Estos pueden usarse directamente en expresiones o vía la función integrada eval() para evaluación dinámica.

Ejemplo: Adición Simple

x = 4
y = 5
print(x + y) # Salida: 9

Los otros operadores funcionan de forma similar; por ejemplo, 4 * 5 produce 20, 4 / 2 da 2.0 y 4 ** 2 resulta en 16.

Operadores de Comparación

Los operadores de comparación (relacionales) evalúan la relación entre dos valores y devuelven un resultado booleano. Incluyen:

Ejemplo: Comparando Dos Variables

x = 4
y = 5
print('x > y es', x > y) # Salida: False

Operadores de Asignación

Los operadores de asignación almacenan valores en variables. La forma básica es =, mientras que los operadores compuestos combinan una operación con asignación, como +=, -=, *=, /= y **=.

Ejemplo: Asignación Básica y Compuesta

num1 = 4
num2 = 5
print('Línea 1 - Valor de num1:', num1)
print('Línea 2 - Valor de num2:', num2)
# Adición compuesta
res = num1 + num2
res += num1
print('Línea 3 - Resultado tras res += num1:', res) # Salida: 13

Operadores Lógicos y Bitwise

Los operadores lógicos (and, or, not) evalúan expresiones booleanas. Los operadores bitwise (&, |, ^, ~, <<, >>) realizan manipulación a nivel de bits.

Ejemplo: Operaciones Lógicas

a = True
b = False
print('a and b es', a and b) # Salida: False
print('a or b es', a or b) # Salida: True
print('not a es', not a) # Salida: False

Operadores de Pertenencia

Los operadores de pertenencia testean la presencia de un valor dentro de una secuencia: in y not in.

Ejemplo: Comprobando Pertenencia en una Lista

x = 4
y = 8
lista_ejemplo = [1, 2, 3, 4, 5]
if x in lista_ejemplo:
    print('Línea 1 - x está disponible en la lista')
else:
    print('Línea 1 - x no está disponible en la lista')
if y not in lista_ejemplo:
    print('Línea 2 - y no está disponible en la lista')
else:
    print('Línea 2 - y está disponible en la lista')

Operadores de Identidad

Los operadores de identidad comparan las direcciones de memoria de los objetos: is y is not. Son esenciales cuando se distingue entre objetos que son iguales en valor pero distintos en identidad.

Ejemplo: Comparación de Identidad

x = 20
y = 20
if x is y:
    print('x e y tienen la misma identidad')
y = 30
if x is not y:
    print('x e y tienen identidades diferentes')

Precedencia de Operadores

Python sigue una jerarquía estricta de precedencia para resolver expresiones sin paréntesis. La precedencia más alta es la exponenciación (**), seguida de operadores unarios, multiplicación/división/módulo, adición/sustracción, operadores de comparación, operadores de identidad, operadores de pertenencia, operadores lógicos y finalmente operadores de asignación.

Usar paréntesis anula la precedencia por defecto y hace las expresiones explícitas.

Ejemplo: Precedencia en Acción

v = 4
w = 5
x = 8
y = 2
z = (v + w) * x / y
print('Valor de (v + w) * x / y es', z) # Salida: 28.0

Compatibilidad con Python 2

A continuación se muestran snippets equivalentes para Python 2, que usa sentencias print sin paréntesis.

# Operadores Aritméticos
x = 4
y = 5
print x + y
# Operadores de Comparación
x = 4
y = 5
print 'x > y es', x > y
# Operadores de Asignación
num1 = 4
num2 = 5
print 'Línea 1 - Valor de num1:', num1
print 'Línea 2 - Valor de num2:', num2
# Asignación Compuesta
num1 = 4
num2 = 5
res = num1 + num2
res += num1
print 'Línea 3 - Resultado tras res += num1:', res
# Operadores Lógicos
a = True
b = False
print 'a and b es', a and b
print 'a or b es', a or b
print 'not a es', not a
# Operadores de Pertenencia
x = 4
y = 8
lista_ejemplo = [1, 2, 3, 4, 5]
if x in lista_ejemplo:
    print 'Línea 1 - x está disponible en la lista'
else:
    print 'Línea 1 - x no está disponible en la lista'
if y not in lista_ejemplo:
    print 'Línea 2 - y no está disponible en la lista'
else:
    print 'Línea 2 - y está disponible en la lista'
# Operadores de Identidad
x = 20
y = 20
if x is y:
    print 'x e y tienen la misma identidad'
y = 30
if x is not y:
    print 'x e y tienen identidades diferentes'
# Precedencia de Operadores
v = 4
w = 5
x = 8
y = 2
z = (v + w) * x / y
print 'Valor de (v + w) * x / y es', z

Resumen

python

  1. Dominando operadores bit a bit y de desplazamiento en C#: Guía completa
  2. Dominando operadores bitwise en C: AND, OR, XOR, desplazamientos y complemento
  3. Variables, constantes y literales en Python – Guía completa
  4. Dominando tipos de datos en Python: Guía práctica
  5. Dominando operadores en Python: Guía completa
  6. Dominando argumentos de funciones en Python: Posicionales, por palabra clave y por defecto
  7. Dominando Diccionarios en Python: Creación, Manipulación y Técnicas Avanzadas
  8. Dominando Iteradores en Python: Cómo Funcionan y Cómo Crear los Tuyos
  9. Explicación de Closures en Python: Cómo las Funciones Anidadas Capturan Variables
  10. Dominando datetime en Python: Guía Práctica de Fechas, Horas y Zonas Horarias
  11. Diccionarios en Python: Añadir, Actualizar y Gestionar Pares Clave/Valor