Fundamentos de la programación (Python)
[M4] Estructuras condicionales. Operadores lógicos y de comparación
Para modificar el orden de ejecución de las instrucciones de un programa, se utilizan las estructures condicionales y los bucles. Las estructuras condicionales determinan si se ejecutan o no, unas acciones dependiendo de si se cumple una determinada condición.
Las estructuras condicionales en Python se representan con la instrucción
if
Contenido
Condicional simple (if)
La estructura condicional if ... permite que un programa ejecute unas instrucciones cuando se cumplan una condición. En caso de haber más de una instruccion en el bloque del if, todas ellas deben tener el mismo identado para que el programa funcione adecuadamente.
Sintaxis:
instrucciones
if condición:
instrucciones
instrucciones
instrucciones
La estructura condicional comienza siempre con la instrucción if seguida de una condición a evaluar que será una expresión lógica. Esta línea debe terminar siempre por dos puntos (:).
Debajo de la instrucción if se escribe el bloque de instrucciones que serían ejecutadas si la condición se cumple. Este bloque de instrucciones debe escribirse con una sangría de 4 espacios (recordemos que Python utiliza el sangrado para reconocer las líneas que forman un bloque de instrucciones).
Ejemplo de la instrucción if:
nota = int(input("Escribe tu nota"))
if nota >= 5: # condicion...
print("Felicidades, has aprobado!!!")
Condicional doble o bifurcaciones (if...else)
La estructura condicional if ... else ... permite que un programa ejecute unas instrucciones cuando se cumple una condición y otras instrucciones cuando no se cumple esa condición.
Sintaxis:
instrucciones
if condición:
instrucciones
instrucciones
else: # else se puede leer como si no...
instrucciones
instrucciones
instrucciones
La condición se evalúa siempre. Si la respuesta a la condición es verdadero (True), se ejecuta solamente el bloque de instrucciones identado debado del if. Si es falso (False) se ejecuta solamente el bloque de instrucciones identado debado del else.Ejemplo:
nota = int(input("Escribe tu nota"))
if nota <5: # condicion...
print("Lo siento, has suspendido...")
else: # si no...
print("Felicidades, has aprobado!!!")
Condicional múltiple (if...elif...else)
La estructura condicional múltiple if ... elif ... else ... permite encadenar varias condiciones utilizando la sentencia elif. Se pueden escribir tantos bloques elif como sean necesarios. El bloque else (que es opcional) se ejecuta si no se cumple ninguna de las condiciones anteriores.
Sintaxis:
instrucciones
if condición1:
instrucciones
instrucciones
elif condición2: # else se puede leer como y si no...
instrucciones
instrucciones
elif condición3:
instrucciones
instrucciones
else:
instrucciones
instrucciones
instrucciones
Ejemplo:
nota = int(input("Escribe tu nota"))
if nota <5:
# condicion 1...
print("Lo siento, has suspendido...")
elif nota >=5 and nota <7 :
# condicion 2...
print("Estás aprobado...")
elif nota >=7 and nota <9 :
# condicion 3...
print("Has sacado un notable...")
else:
# si no se cumple nada de lo anterior...
print("Felicidades, tienes un Excelente!!!")
If anidados
Una estructura condicional puede contener a su vez otra estructura condicional anidada.
Ejemplo:
nota = int(input("Escribe tu nota"))
if nota <5:
# condicion 1...else:
print("Lo siento, has suspendido...")
# si no se cumple nada de lo anterior...
print("Felicidades, has aprobado, veamos como...")
if nota >=5 and nota <7 : # condicion 1...
print("Regular...")
elif nota >=7 and nota <9 : # condicion 2...
print("Has sacado un notable...")
else: # si no se cumple nada de lo anterior...
print("Felicidades, tienes un Excelente!!!")
Operadores lógicos y de comparación
Operadores lógicos
Los operadores lógicos se utilizan para construir expresiones lógicas, cuyo resultado es de tipo True (verdadero) o False (falso). En Python son los siguientes:
| Operador | Descripción | Ejemplo |
|---|---|---|
and |
El resultado de la comparación es True si ambas condiciones son verdaderas |
nota >=5 and nota <7 |
or |
El resultado de la comparación es True si una de las dos condiciones es verdadera |
nota == 9 or nota == 10 |
not |
Cambia el valor de un resultado. Si es verdadero será falso y viceversa. | not (nota == 9 or nota == 10) |
Operadores relacionales o de comparación
Los operadores relacionales o de comparación comparan dos operandos (ejemplo variable | valor) y retornan como resultado de la comparación un valor True (verdadero) o False (falso).
| Operador | Descripción | Ejemplo |
|---|---|---|
| == | Igual | nota == 5 |
| != | Diferente | nota != 5 |
| > | Mayor que | nota > 5 |
| >= | Mayor o igual que | nota >= 5 |
| < | Menor que | nota < 5 |
| <= | Menor o igual que | nota <= 5 |