Contenido del Curso
Sentencias Condicionales en Python
Sentencias Condicionales en Python
Operadores Lógicos
Anteriormente, exploramos situaciones que implicaban una única condición en la sentencia if. Ahora, vamos a profundizar en escenarios en los que necesitamos evaluar múltiples condiciones.
Un enfoque es utilizar sentencias if
anidadas, como se muestra en el ejemplo:
Ejemplo 1:
is_adult = True has_license = True if is_adult: if has_license: print("You can drive car")
Sin embargo, basarse en gran medida en condiciones if
anidadas no se considera la mejor práctica. Un desarrollador experimentado preferiría utilizar operadores lógicos en lugar de condiciones anidadas.
Ejemplo 2:
is_adult = True has_license = True if is_adult and has_license: print("You can drive car")
El lenguaje Python tiene 3 operadores lógicos:
and
- condición_1 y condición_2 - funciona sólo si ambas condiciones sonTrue
.or
- condición_1 o condición_2 - funciona si al menos una de las dos condiciones especificadas esTrue
.not
-not condición
se aplica a una condición (no a dos como arriba) e invierte su valor.
python
En la sintaxis de Python, cada valor "vacío" es equivalente a False
, y cualquier valor "no vacío" es equivalente a True
.
Ejemplo 3:
steps_taken = 0 if not steps_taken: print("No steps recorded yet. Time to get moving!")
Logical and
Condition with and
works only if both conditions are True
.
steps_taken = 8000 calories_burned = 600 hydration_level = 2 if steps_taken >= 5000 and calories_burned >= 500 and hydration_level >= 2: print("Amazing! You've achieved all your fitness goals for the day.")
Let's continue by examining conditional statements with multiple conditions. Imagine you've taken exams in three subjects and received the following results: math_exam = 95
, english_exam = 90
, programming_exam = 100
. You've decided to apply to three different universities, each with its own admission requirements. Let's explore these requirements.
To enter the first university, you must have a score greater than or equal to 90 in all three subjects simultaneously. Let's see if you meet this university's criteria.
As we can see, your scores from all exams are greater than or equal to 90, so our if statement worked.
Then move on to the next university. Here the condition is different, since this is the best university in your city, your scores must be greater than or equal to 95.
# Your scores math_exam = 95 english_exam = 90 programming_exam = 100 # Checking whether you will pass to the second university if math_exam >= 95 and english_exam >= 95 and programming_exam >= 95: print('Congratulations! You are enrolled in our university')
As we see that our condition is not fulfilled, since we have two objects that satisfy the condition, but the third object, namely english_exam = 90
, it is less than 95. Therefore, we do not get anything as a result, and our if statement is not executed.
Moving on to the next university. Here the condition is quite simple. In order to pass here, you need to have at least one subject that has passed 100 points.
It is obvious that for this case we need to use the or operator.
1. In a fitness tracker app, you want to check if a user meets their daily step goal and calorie goal. Which logical operator should you use?
2. How would you check if the user meets at least one of their fitness goals?
3.
¡Gracias por tus comentarios!