L'instruction conditionnelle⚓︎
L'instruction conditionnelle va permettre de modifier le déroulement du programme sur la base d'une condition.
L'instruction « si ... alors ... » if⚓︎
Par le mot clé if
suivi d'une condition, le programme va exécuter un bloc d'instructions lorsque cette condition vaudra True
et seulement dans ce cas.
Voici un exemple :
nom = input("Quel est votre nom ?")
if nom == "Toto":
print("Au revoir Toto")
print("Fin")
nom == "Toto"
sera alors vraie (True
) et le programme va exécuter l'instruction print
située dans le bloc d'instructions qui suit la ligne if ... :
; ce qui provoquera l'affichage de "Au revoir Toto"
puis de "Fin"
.
Si on saisit un autre nom, alors la condition nom == "Toto"
sera fausse (False
) et le programme saute le bloc d'instructions du if
sans l'exécuter, pour passer à l'instruction print("Fin")
alignée (indentée) au même niveau que le if
; ce qui génère l'affichage de "Fin"
.
L'instruction « si ... alors ... sinon ... » if else⚓︎
En complétant l'instruction if
par le mot clé else
on est en mesure d'exécuter un second bloc d'instructions lorsque la condition devient False
et seulement dans ce cas.
Complétons l'exemple précédent :
nom = input("Quel est votre nom ?")
if nom == "Toto":
print("Au revoir Toto")
else:
print("Au revoir le nouveau")
print("Fin")
Par contre si on saisit un autre nom, on observe que l'instruction print("Au revoir le nouveau")
est cette fois-ci exécutée car elle se trouve dans le bloc introduit par else
sachant que la condition nom == "Toto"
vaut False
.
Dans les deux cas le programme se poursuit avec l'affichage de la chaîne "Fin"
.
L'instruction « si ... alors ... sinon si ... » if elif⚓︎
Le mot clé elif
est l'équivalent d'un else
dans lequel on placerait une autre instruction conditionnelle. On l'utilise le plus souvent pour traiter les situations où plusieurs cas de figures se présentent.
Voici un exemple qui intègre en plus un else
final afin de traiter tous les autres cas.
n = int(input("Choisissez 1, 2 ou 3"))
if n == 1:
print("Vous avez choisi le 1")
elif n == 2:
print("Vous avez choisi le 2")
elif n == 3:
print("Vous avez choisi le 3")
else:
print("Vous vous êtes trompé")
"Vous avez choisi le 3"
est affiché cela signifie que la condition n == 3
vaut True
mais que les précédentes (n == 2
et n == 1
) valent False
. Il en est de même du bloc else
. Celui-ci n'est exécuté que si toutes les conditions précédentes valent False
.
Entraînement⚓︎
Entraînez-vous sur l'instruction conditionnelle en vous rendant sur le site Pyvert.