Conociendo las dos estructuras comparativas podréis imaginar lo que hacen unidas, se podría indicar que su traducción seria “si no, sí”, personalmente no uso este tipo de comparador pero yo siempre digo, que es mejor saber que creer, así que vamos a conocer la estructura:
elif
Se utiliza siempre después de “if” al igual que else, la diferencia es que en este else no se ejecuta si la comparación en el “if” es negativa, se ejecuta si el “if” anterior da negativo y se da positiva la condicione que lleva este “elif”, como muestro la estructura:
Función (Dato/Objeto – Operador – Dato/Objeto) :
elif («b» in objeto):
Veamos un código con el último ejemplo, en este caso ya queremos más detalle, comprobare si mi nombre tiene la letra “a” y la “b”, de no ser así, quiero saber si tiene la “a” o si contiene la “b”.
## creo objeto con mi nombre
objeto = «alain»
## pongo la condicion y dos elseif para ver cada letra
if («a» and «b» in objeto):
print ("objeto contiene la letra a y b")elif («a» in objeto):
print ("el obejto si contiene una a")elif («b» in objeto):
print ("el obejto si contiene una b")## pongo un else por si no tuviera ninguna letra
else:
AlainSQ
print ("el obejto no contiene ninguna")
El número de líneas de código aumenta, pero también aumenta la cantidad y detalle de la información que obtenemos por pantalla para una cosa tan sencilla como es una palabra, en esta imagen se muestra el resultado del código creado.

Yo diría que nuestro programa es cada vez más “inteligente”, es capaz de hacer más cosas con la misma información, las nuevas funciones que vamos a ver harán que nuestro programa sea más “autónomo” haciendo bucles cerrados e infinitos.