Condiciones If … Else en Python

NUEVO PROYECTO: Recibe una curiosidad diaria con nuestra Newsletter. Pequeños asombros diarios para Personas Altamente Curiosas

Las condiciones son declaraciones que pueden ser verdaderas o falsas y viene definidas por True or False.

Existen diferentes formas de hacer condiciones en Python.

Para montar condiciones vamos a necesitar conocer los siguientes símbolos que usaremos para comparar valores:

SímboloSignificado
==Igual
!=Diferente
<Menor que
<=Menor o igual que
>mayor que
>=mayor o igual que

Es importante recordar que para comprobar si dos valores son iguales hay que utilizar == porque si utilizamos solo un = estaremos asignando ese valor a la variable, es decir.

var == 1 comprueba si la variable es igual a 1
var = 1 le asigna el valor 1 a la variable

Declaraciones condicionales

Tenemos If, If … Else y If … Elif … Else. Yo tenía un profesor que nos decía que cualquier cosa se puede programar utilizando muchos If…

NUEVO PROYECTO: Recibe una curiosidad diaria con nuestra Newsletter. Pequeños asombros diarios para Personas Altamente Curiosas

Se utilizan para modificar el valor de una función, aquí ya no solo comparamos, sino que además si se cumple o no la condición hacemos algo más.

Te interesará Guía sobre el Sea Glass, otro cristal usado en joyería

If Statement

La forma de declarar una condición If es la siguiente

    if dalle == 'yes':       
        image = create_images_dalle (key_main)

If .. Else Statement

Diferentes programadores defienden la desaparición de esta sentencia en favor de diferentes If con sus condiciones

    if dalle == 'yes':       
        image = create_images_dalle (key_main)
    else:
        image = create_images (key_main)

De esta forma en el ejemplo, si la variable dalle tiene valor ‘yes’ llamará a una función y la guarda en la variable image

Y si no tiene este valor llama a otra función.

If … Elif … Else

Los Elif nos permiten meter más opciones en la condición. Es una especie de switch.

    if dalle == 'yes':       
        image = create_images_dalle (key_main)
    elif dalle == "only_h2":
        image = create_images_dalle (key_main)
    else:
        image = create_images (key_main)

Ante esto, lo mismo comentado antes. Esta estructura se puede escribir utilizando solo If.

Condiciones anidadas

Podemos anidar If dentro de If, o If … else dentro de If o de otro If else, todas las combinaciones que se nos ocurran y que se adapten para conseguir lo que necesitamos.

Para anidar los If, lo que hay que hacer es meterlo tabulado, dentro del que queramos y de esta forma se crea la jerarquía.

    if dalle == 'yes':       
        image = create_images_dalle (key_main)
        if dalle_hx == "only_h2":
            image_hx = create_images_dalle_h2 (key_main)

Es como un subif, que solo se evaluará si se ha cumplido la condición padre.

En el ejemplo si tenemos la variable dalle como ‘yes’, llamara a la función create_images y guardará el resultado en la variable image.

Luego evaluará el segundo if y si la variable dalle_hx vale ‘only_h2’ entonces llamará a otra función. Pero si dalle hubiera tenido el valor ‘no’ no hubiera evaluado esta segunda condición, algo que sí hace si no están anidadas.

Match, el Switch de Python

Otra forma de trabajar con condiciones es usar Match que busca el caso concreto que cumple con nuestra elección. Sirve para comparar opciones y se suele utilizar es sitios donde tenemos muchos elif.

Su sintaxis

      name = input("What's your name? ")

  match name: 
      case "Harry" | "Hermione" | "Ron":
          print("Gryffindor")
      case "Draco":
          print("Slytherin")
      case _:
          print("Who?")

Deja un comentario