Logo Python 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...
print("Lo siento, has suspendido...")
else:
# 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