[MÚSICA] Hola, en esta lección vamos a aprender cómo cambiar el flujo del programa en base a una condición para que nuestros programas puedan decidir si ejecutan una acción u otra usando la instrucción if Else. En la vida diaria tomamos decisiones dependiendo de ciertas circunstancias en que nos encontramos, por ejemplo, supongamos que estoy en mi casa y quiero salir, si veo que está lloviendo decidiré tomar un paraguas antes de salir de casa, y en caso contrario, no lo tomaré. En nuestros programas también necesitaremos ser capaces de modelar este comportamiento y nuestro objetivo en esta lección será lograr que el programa decida qué hacer bajo ciertas condiciones. Y aquí la palabra clave es condición. Si analizamos lo que está decidiendo esta persona, ella se está preguntando si llueve o no llueve, por lo tanto, esta es la condición que está analizando. Esta condición puede ser verdadera o falsa: si es verdadera, la persona tomará una acción; y si es falsa, tomará otra opción. Este tipo de decisión basada en si se cumple o no una condición es lo que queremos describir en nuestro programa. Haremos una pequeña revisión sobre qué es una condición. Una condición es una expresión que puede tomar uno de dos valores, o verdadero o falso, y una variable que guarda este tipo de valores será de tipo bool. you conocemos operadores que podemos aplicar a valores numéricos para obtener un resultado de tipo bool, como los operadores menor, menor igual, mayor, mayor igual, distinto y el operador de igualdad. Aplicar un operador de comparación entre dos valores numéricos solo puede resultar ser verdadero o falso, es decir, de tipo bool. En nuestros ejemplos, la comparación 5 es menor que 5,1 es verdadera, 3 es mayor o igual a 5 es falsa, y así sucesivamente. También conocemos los operadores para tipos lógicos: not, and y or. Estos nos sirven para combinar varias condiciones resultando también en un valor de tipo bool. En el caso de not, el valor corresponde a la negación del valor original, por ejemplo, 3 mayor que 5 es falso, por lo que su negación es True. En el caso del Y lógico, este entrega verdadero cuando ambos valores son verdaderos, en este caso, 3 mayor a 5 es falso por lo que la conjunción es falsa. Finalmente, el O lógico entrega verdadero cuando al menos uno de los valores es verdadero. Entonces, ahora supongamos que tenemos una variable de tipo bool de nombre llueve. Podemos escribir la condición llueve es igual igual a True que compara el valor de llueve con True, es decir, será verdadera cuando el valor de llueve sea True, y falsa cuando el valor de llueve sea False. Pero aún necesitamos una manera de decirle a nuestro programa qué hacer en cada caso. Queremos que nuestro programa se comporte de la siguiente manera. Primero, el programa evaluará si una condición es verdadera y falsa, si es verdadera, le diremos que continúe por la rama izquierda donde ejecutará una instrucción que llamaremos instrucción 1, y luego de ello, que continúe con el programa pero sin haber ejecutado la instrucción 2. En cambio, cuando la condición sea falsa queremos que se ejecute la instrucción 2 en lugar de la instrucción 1. La instrucción que nos permite hacer esto es la instrucción if. Esta instrucción se inicia con la palabra if seguido de la condición que estamos evaluando. Cuando la condición es verdadera o True, entonces se ejecutará lo que está dentro del if. ¿Y qué es lo que está dentro del if? Es todo aquello que le sigue a los dos puntos y que en Python debe escribirse con una cantidad fija de espacios. Esto se llama indentación. Debemos poner mucha atención con el tamaño de la indentación que usamos porque todas las instrucciones que use la misma indentación serán para el intérprete de Python las instrucciones que deben ejecutarse cuando la condición del if es verdadera. Ahora, si la condición es falsa, lo que se ejecutará son las instrucciones que estén dentro del else. Entonces, ahora podemos escribir nuestro programa que decide si debo llevar paraguas o no. Y es bastante simple, en primer lugar, le asignamos el valor True a la variable llueve para indicar que está lloviendo. En un programa más real, quizás este dato lo obtendríamos desde el usuario, o incluso, desde un sensor. Luego preguntamos usando if si está lloviendo. La condición es que el valor de llueve sea verdadero. En este caso, la condición se cumple, por lo tanto, se ejecuta la línea tres que escribe el texto llevaré paraguas. Finalmente, se ejecuta la línea seis que no depende del if, la cual escribe el texto ahora saldré a la calle. ¿Pero qué hubiese pasado si la variable llueve inicialmente hubiese sido falsa? Veamos esta versión de nuestro programa. Esta vez al ejecutar la línea dos la condición no se cumple, por lo tanto, you que no se cumple la condición iremos al else. Para esto, el programa ignorará todo lo que hay dentro del if, yendo directamente al else. Esto es la línea cuatro y hará las instrucciones que están dentro del else, es decir, la línea cinco, imprimiendo no llevaré paraguas. Después de esto seguiremos con las instrucciones que están después de nuestro if, es decir, la línea seis que imprimirá ahora saldré a la calle. Tenemos entonces un programa que nos indica de acuerdo a una condición si debemos llevar paraguas o no. También podemos construir condiciones más complejas. Supongamos que tenemos los valores llueve, que es de tipo bool, y temperatura, que es un número entero. Queremos expresar el hecho de que si llueve y hace frío, entonces, además de llevar el paraguas debemos llevar un abrigo. Usando if podemos escribir esta condición en la línea tres para decir llueve y hay menos de 20 grados. Si ambas condiciones se cumplen, entonces la expresión es verdadera y se ejecuta la línea cuatro que escribe el texto llevaré paraguas y abrigo. En esta lección, hemos aprendido que podemos utilizar if y else cuando queremos que ocurra algo dependiendo de una condición. Además, descubrimos que podemos usar condiciones simples y condiciones más complejas para determinar el flujo de nuestro programa. Muchas gracias. [SILENCIO] [SILENCIO]