
La estructura de control if ... else ... permite que un programa ejecute unas instrucciones cuando se cumple una condición y otras instrucciones cuando no se cumple esa condición. En inglés "if" significa "si" (condición) y "else" significa "si no". La orden en Python se escribe así:
La sintaxis de la construcción if ... else ... es la siguiente:

Construcción sentencia If - Else
La ejecución de esta construcción es la siguiente:
La condición se evalúa siempre.
• Si el resultado es True se ejecuta solamente el bloque de sentencias 1.
• Si el resultado es False se ejecuta solamente el bloque de sentencias 2.
La primera línea contiene la condición a evaluar. Esta línea debe terminar siempre por dos puntos (:).
A continuación viene el bloque de órdenes que se ejecutan cuando la condición se cumple (es decir, cuando la condición es verdadera). Es importante señalar que este bloque debe ir sangrado, puesto que Python utiliza el sangrado para reconocer las líneas que forman un bloque de instrucciones. El sangrado que se suele utilizar en Python es de cuatro espacios, pero se pueden utilizar más o menos espacios. Al escribir dos puntos (:) al final de una línea, IDLE sangrará automáticamente las líneas siguientes. Para terminar un bloque, basta con volver al principio de la línea.
Después viene la línea con la orden else, que indica a Python que el bloque que viene a continuación se tiene que ejecutar cuando la condición no se cumpla (es decir, cuando sea falsa). Esta línea también debe terminar siempre por dos puntos (:). La línea con la orden else no debe incluir nada más que el else y los dos puntos.
En último lugar está el bloque de instrucciones sangrado que corresponde al else.
Diagrama de flujo de la sentencia condicional if ... else ...
El diagrama de flujo siguiente muestra la ejecución de una sentencia if ... else ...:

Diagrama sentencia If - else