Operadores Lógicos
Las personas dicen "sí y sí", "sí o no", "definitivamente no". En Python, los operadores lógicos and, or y not expresan formalmente estas ideas y producen valores booleanos (True/False) que se utilizan con comparaciones en if/while.
Significado de cada operador
Precedencia
not tiene mayor prioridad que and, la cual tiene mayor prioridad que or (not > and > or). Utilizar paréntesis en caso de duda.
Por ejemplo, age >= 18 and has_id es True solo si ambas comprobaciones son verdaderas:
123age = 21 has_id = True print(age >= 18 and has_id) # True
Tabla de verdad
Una tabla de verdad enumera todos los posibles valores de verdad de las entradas y muestra el resultado de una expresión lógica. Es una forma compacta de razonar sobre la lógica sin ejecutar código.
Uso de la tabla
Si X es False y Y es True, entonces X and Y es False, X or Y es True, y not X es True.
Valores de retorno y evaluación corta (juntos)
and y or no siempre devuelven las palabras True/False, retornan uno de sus operandos, y Python puede detenerse antes una vez que el resultado es conocido.
-
A and B: -
Si
Aes falso, toda la expresión es falsa y el resultado esA(Python no evalúaB); -
Si
Aes verdadero, el resultado depende deBy la expresión se evalúa comoB. -
A or B: -
Si
Aes verdadero, la expresión es verdadera y el resultado esA(Python no evalúaB); -
Si
Aes falso, el resultado depende deBy la expresión se evalúa comoB. -
not Xsiempre retorna un valor Booleano real:TrueoFalse.
1234567891011121314151617# Choosing a display name for a user profile username = "" # user didn't set a custom name print(username or "Guest") # "Guest" → fallback to default name username = "Alice" print(username or "Guest") # "Alice" → custom name is used # Checking login attempts and access permissions login_attempts = 0 access_level = 123 print(login_attempts and access_level) # 0 → login not yet attempted login_attempts = 5 print(login_attempts and access_level) # 123 → user has access after attempts # Checking empty and non-empty values print(not 0, not "Hello") # True False → 0 is falsey, non-empty string is truthy
1. Rellena los espacios con True o False). Sea X = True, Y = False.
2. ¿Qué expresión corresponde a la lógica clásica para "ni X ni Y"?
3. ¿Qué devuelve la expresión?
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Awesome!
Completion rate improved to 5.26
Operadores Lógicos
Desliza para mostrar el menú
Las personas dicen "sí y sí", "sí o no", "definitivamente no". En Python, los operadores lógicos and, or y not expresan formalmente estas ideas y producen valores booleanos (True/False) que se utilizan con comparaciones en if/while.
Significado de cada operador
Precedencia
not tiene mayor prioridad que and, la cual tiene mayor prioridad que or (not > and > or). Utilizar paréntesis en caso de duda.
Por ejemplo, age >= 18 and has_id es True solo si ambas comprobaciones son verdaderas:
123age = 21 has_id = True print(age >= 18 and has_id) # True
Tabla de verdad
Una tabla de verdad enumera todos los posibles valores de verdad de las entradas y muestra el resultado de una expresión lógica. Es una forma compacta de razonar sobre la lógica sin ejecutar código.
Uso de la tabla
Si X es False y Y es True, entonces X and Y es False, X or Y es True, y not X es True.
Valores de retorno y evaluación corta (juntos)
and y or no siempre devuelven las palabras True/False, retornan uno de sus operandos, y Python puede detenerse antes una vez que el resultado es conocido.
-
A and B: -
Si
Aes falso, toda la expresión es falsa y el resultado esA(Python no evalúaB); -
Si
Aes verdadero, el resultado depende deBy la expresión se evalúa comoB. -
A or B: -
Si
Aes verdadero, la expresión es verdadera y el resultado esA(Python no evalúaB); -
Si
Aes falso, el resultado depende deBy la expresión se evalúa comoB. -
not Xsiempre retorna un valor Booleano real:TrueoFalse.
1234567891011121314151617# Choosing a display name for a user profile username = "" # user didn't set a custom name print(username or "Guest") # "Guest" → fallback to default name username = "Alice" print(username or "Guest") # "Alice" → custom name is used # Checking login attempts and access permissions login_attempts = 0 access_level = 123 print(login_attempts and access_level) # 0 → login not yet attempted login_attempts = 5 print(login_attempts and access_level) # 123 → user has access after attempts # Checking empty and non-empty values print(not 0, not "Hello") # True False → 0 is falsey, non-empty string is truthy
1. Rellena los espacios con True o False). Sea X = True, Y = False.
2. ¿Qué expresión corresponde a la lógica clásica para "ni X ni Y"?
3. ¿Qué devuelve la expresión?
¡Gracias por tus comentarios!