8

ENTENDIENDO LAS CONDICIONALES. Una mirada profunda 👀

Fataë
Fatae
4237

Todo buen desarrollador necesita poder entender y comprobar las condicionales que usamos.

🎯 El objetivo: poder cambiar al comportamiento de un programa, entender el flujo, fluir con él.

Bueno, pues las declaraciones condicionales nos dan esa habilidad.


Empecemos con la más sencilla:

Condicional if:

La expresión boolena después del if es llamada la condición.
Y la(s) línea(s) después del if debe ir identada.

Si la condición es verdadera, entonces la identación es ejecutada.
Si la condición es falsa, la declaración identada es saltada.

ifx > 0 :
    print('x is positive')

Una segunda forma de la declaración if es cuando tiene dos posibilidades y el valor de la condición determina cual de las dos es ejecutada.
La sintaxis es así:

if x%2 == 0 :
    print('x iseven')
else :
    print('x isodd')

Ya que la condición debe ser verdadera o falsa, se ejecutará una y sólo una de las dos alternativas. Estas alternativas se llaman ramas 🌿, porque son ramas en el flujo de ejecución.


Condicionales Encadenadas:

Algunas veces tenemos más de dos posibilidades y necesitamos más de dos ramas.
Una manera de expresarlo es con las condicionales encadenadas.

ifx < y:
    print('x is less than y')
elif x > y:
    print('x is greater than y')
else:
    print('x and y are equal')

👀 Observación: elif es una abreviación de “else if”.
De nuevo, únicamente una de las ramas es ejecutada.

⚠️ Cada condición es checada en orden.
Si la primera es falsa, la siguiente es revisada y así sucesivamente.
Si una de ellas es verdadera, su rama correspondiente es ejecutada y la declaración termina.
Incluso si más de una condición es verdadera, sólo la primera rama que sea evaluada como verdadera será ejecutada.


Condicionales Anidadas

Esta es la más interesante, mira este hermoso flujo 🤩 :

Esto sucede cuando una condicional es incorporada dentro de otra y tiene diversos niveles.

Podríamos escribir tres ramas, por ejemplo (su diagrama de flujo es el de arriba ☝️):

ifx == y:
    print('x and y are equal')
else:
    ifx < y:
        print('x is less than y')
    else:
        print('x is greater than y')

La primera condicional contiene dos ramas. La primera contiene una declaración simple y la segunda contiene una declaración if la cual tiene otras dos ramas propias.

Las condicionales anidadas pueden ser difíciles de leer rápidamente y en general es buena idea evitarlas si se puede.

Los operadores lógicos suelen ser una forma de simplificar las declaraciones condicionales anidadas.

Por ejemplo, el siguiente código puede ser reescrito usando una simple condicional.

if0 < x:
    ifx < 10:
        print('Soy positivo y ya casi acabamos amix')

Con operador lógico “and” quedaría así (ve que elegancia la de Francia 😱):

if0 < x and x < 10:
    print('Soy positivo y ya casi acabamos amix')

Aquí el printes ejecutado únicamente si son verdaderas ambas condicionales, entonces conseguimos el mismo resultado con el operador “and”.


Concluimos con ésto, así que, eso es todo amigos 😃

Escribe tu comentario
+ 2
2
11775Puntos
4 años
  1. Muy buen aporte, los diagramas de flujo, son en mi opinion, una de las mejores maneras de entender las condicionales, el componente visual ayuda mucho.