web stats
Featured image of post Python 9 – Condicionales (If / Else / Elsif)

Python 9 – Condicionales (If / Else / Elsif)

Los condicionales son mecanismos que nos van a permitir controlar el flujo del programa, ejecutando ciertas partes del código únicamente bajo ciertas condiciones que nos interesen.

Los condicionales son mecanismos que nos van a permitir controlar el flujo del programa, ejecutando ciertas partes del código únicamente bajo ciertas condiciones que nos interesen

Operadores de comparación

Son operadores especiales que nos devuelven un booleano (True / False)

mayor >

1
2
>>> 2 > 4
False

menor <

1
2
>>> 2 < 4
True

igual ==

1
2
>>> 2 == 4
False

Tambien se puede utilizar con otros tipos de datos, como por ejemplo strings:

1
2
>>> "hola" == "hola"
True

if

Si la condición se cumple (True), se ejecuta la sentencia, si no se cumple (False), se salta el bloque if y continúa la ejecución.

Vamos a verlo en un ejemplo. Creamos una variable edad. Si la edad es menor de 65, aún no se puede jubilar:

1
2
3
4
5
edad = 20
 if edad < 65:
     print("Aun no te puedes jubilar")
PS C:> python .\condition.py
Aun no te puedes jubilar

En este punto es importante indicar que en Python se debe indentar correctamente con cierto número de espacios, o tabuladores. Así, en este caso, la expresión debe ir dentro de la declaración del if

En este caso, vamos a poner 70 como edad. En este caso, como no se cumple la condición, se salta el bloque if:

1
2
3
4
5
6
edad = 70
 if edad < 65:
     print("Aun no te puedes jubilar")
 print("He terminado")
PS C:> python .\condition.py
He terminado

if / Else

En este caso, si no se cumple la condición del if, se ejecuta la indicada en el bloque else. Importante tener en cuenta la indentación.

1
2
3
4
5
6
7
8
9
edad = 70
 if edad < 65:
     print("Aun no te puedes jubilar")
 else:
     print("Ya te puedes jubilar")
 print("He terminado")
PS C:> python .\condition.py
Ya te puedes jubilar
He terminado

Modificamos únicamente el valor de edad:

1
2
3
4
5
6
7
8
9
edad = 30
 if edad < 65:
     print("Aun no te puedes jubilar")
 else:
     print("Ya te puedes jubilar")
 print("He terminado")
PS C:> python .\condition.py
Aun no te puedes jubilar
He terminado

elif

Permite hacer otra comparación adicional de tipo «if«, antes de saltar al else. Se pueden utilizar tantos elif como sea necesario antes de else.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
edad = 18
 if edad < 65:
     print("Aun no te puedes jubilar")
 if edad == 18:
     print("Te queda mucho por cotizar")    
 else:
     print("Ya te puedes jubilar")
 print("He terminado")
PS C:> python .\condition.py
Aun no te puedes jubilar
Te queda mucho por cotizar
He terminado

Operadores lógicos

  • and
  • or
  • not

Los operadores lógicos son otro tipo que nos ayudan a hacer mucho más claro y rápido el código.

Podemos escribir el tipo de código que hemos estado viendo hasta ahora, utilizando operadores lógicos de forma que nos quede en una sóla línea. Mejor verlo directamente en un ejemplo….

Vamos a verificar si un número está entre 10 y 20. Podemos escribirlo como hemos visto hasta ahora:

1
2
3
4
numero = 15
 if numero > 10:
     if numero < 20:
         print ("el numero está entre 10 y 20")

o utilizando los operadores lógicos:

1
2
if numero > 10 and numero < 20:
         print ("el numero está entre 10 y 20")    

Otro ejemplo, en este caso si el número es mayor que 10, pero el número no es 20, nos muestra el mensaje

1
2
3
4
if numero > 10 and not numero == 20:
         print ("el numero es mayor que 10 pero no es 20")
PS C:> python .\condition.py
el numero es mayor que 10 pero no es 20
comments powered by Disqus
Creado con Hugo-Extended & theme Stack