Objetivos de aprendizaje
-
si declaración
-
sentencia if-else
-
sentencia if-elif-else
Tutorial sobre sentencias condicionales
Si declaración
-
Sintaxis (¿cómo escribir la sentencia If en Python?)- sentencia(s)
1 2
si la expresión/condición de prueba: hacer esto
-
Aquí, el programa evalúa la expresión de prueba y ejecutará las declaraciones solo si la expresión/condición de prueba es verdadera.
-
Si la expresión de prueba es Falsa, la(s) declaración(es) no se ejecuta(n).
-
En Python, el cuerpo de la instrucción if está indicado por la sangría. El cuerpo comienza con una sangría y la primera línea sin sangría marca el final.
-
Python interpreta los valores distintos de cero como verdaderos (incluso los valores negativos).
-
Ninguno y 0 se interpretan como Falso.
-
Las cadenas vacías, las listas vacías, los dictados vacíos, las tuplas vacías y los conjuntos vacíos también se interpretan como falsos.
Diagrama de flujo:

Ejemplo: programa en Python para detectar si un número es par. (El signo % nos dice el resto de una expresión. Cualquier número con un resto de 0 después de dividir por 2 debe ser par).

Sentencia If-else
- Sintaxis:
1 2 3 4
si la expresión de prueba: cuerpo de si más: cuerpo de otra cosa
- La declaración if-else evalúa la expresión de prueba y ejecutará el cuerpo de if solo cuando la condición de prueba sea verdadera.
- Si la condición es Falsa, se ejecuta el cuerpo de else. La sangría se utiliza para separar los bloques.
Diagrama de flujo:

Ejemplo:

La expresión de prueba es falsa ya que 5 no es un número par. Entonces, el cuerpo de la declaración if no se ejecuta. Se ejecuta el cuerpo de else.
Declaración if-elif-else
- Sintaxis:
1 2 3 4 5 6
si la expresión de prueba: cuerpo de si expresión de prueba elif: cuerpo de elif más: cuerpo de otra cosa
-
elif es la abreviatura de else if. Nos permite verificar múltiples expresiones.
- Si la condición de if es Falsa, comprueba la condición del siguiente bloque elif y así sucesivamente.
-
Si todas las condiciones son Falsas, se ejecuta el cuerpo de else.
-
Solo un bloque entre los varios bloques if-elif-else se ejecuta de acuerdo con la condición.
-
El bloque if solo puede tener un bloque else. Pero puede tener múltiples bloques elif.
Diagrama de flujo:

Ejemplo:

5 no es divisible por 2 ni por 3. Entonces, las declaraciones if y elif son falsas. El bloque else se ejecutará aquí.
Ahora, intentemos entender el ejemplo dado.
- Primero asignamos el valor 5 a z.
- El control cambia a la siguiente línea donde se marca z%2. 5 no es divisible por 2, por lo que el control no cambia al cuerpo de if.
- Luego, se ejecuta la instrucción elif: z%3. Como 5 no es divisible por 3, el cuerpo de elif no se ejecuta.
- Finalmente, se ejecuta la sentencia else. El control cambia al cuerpo de else, y se imprime "z no es divisible por 2 ni por 3".
- Punto a tener en cuenta: Las condiciones se comprueban en orden de arriba a abajo. Si alguna de las condiciones if o elif anteriores es verdadera, se ejecutará y no se verificarán más condiciones.
- ¿Puedes averiguar qué imprimirá z=6 en el ejemplo dado?