Pour dévier le flot des instructions en fonction de la valeur (vraie/fausse, non_nulle/nulle, non_vide/vide) d’une expression (appelée ici condition), Python met à notre disposition les clauses if, elif et else.
La clause if simple permet d’exécuter un bloc d’instructions si la condition est vraie :
|
1 2 |
if condition : # si condition est vraie bloc_si_condition_vraie # alors on parcourt ce bloc |
On peut rajouter une clause else (facultative, donc) pour exécuter un autre bloc si la condition est fausse :
|
1 2 3 4 |
if condition : # si condition est vraie bloc_si_condition_vraie # alors on parcourt ce bloc else : # sinon bloc_si_condition_fausse # alors on parcourt ce bloc |
Plutôt que d’emboîter des clauses if, on peut utiliser une clause if suivie par une (des) clause(s) elif :
|
1 2 3 4 5 6 7 8 9 10 11 |
if condition1 : # si condition1 est vraie bloc1_si_C1_vraie # alors on exécute ce bloc1 elif condition2 : # sinon si condition2 est vraie bloc2_si_C1_fausse_mais_C2_vraie # alors on exécute ce bloc2 elif condition3 : # sinon si condition3 est vraie bloc3_si_C1C2_fausses_mais_C3_vraie # alors on exécute ce bloc3 ... elif conditionN : # sinon si conditionN est vraie blocN_si_CN_première_à_être_vraie # alors on exécute ce blocN else : # (facultatif) si toutes les conditions sont fausses bloc_else # alors on exécute ce bloc |
Remarques :
- dans toutes les constructions ci-dessus, au plus un bloc est parcouru
- ne pas oublier le caractère “deux points” qui termine chacune des lignes d’en-tête ! ! !
-
se souvenir que si un bloc se réduit à une instruction, on peut le placer directement après le “deux points”
12345678if x % 2: # comprendre ici "si x est non nul modulo 2"print("x est impair")elif x % 4: # ici x est pair, et on teste son reste modulo 4print("x est pair, mais pas multiple de 4")elif x % 8: # ici x est multiple de 4, et on teste son reste modulo 8print("x multiple de 4, mais pas de 8")else: # si on en est là, c'est que x est multiple de 8print("x est multiple de 8")
Retour à l’accueil du cours Python/Numpy
Sommaire du chapitre 3
- Entrée au clavier (input) et affichage à l’écran (print)
- Nécessité de délimiter des blocs d’instructions
- L’importance fondamentale de l’indentation en Python
- Branchements conditionnels if…elif…else…
- Expressions conditionnelles
- Répétitions conditionnelles (while)
- Notion d’intervalle
- Répétitions inconditionnelles (boucles for)
- L’instruction pass