Table des matières
Test - Python
si… alors… sinon = if… then… else
Comme dans beaucoup de langages, le mot then n'est pas utilisé ce qui allège un peu la syntaxe.
Pseudo-code
Le pseudo-code est une écriture d'un programme dans un langage de programmation presque naturel, sans faire référence à un langage en particulier. Il permet de mettre en avant des structures qui se retrouveront, avec de légères adaptations, dans la plupart des langages.
Si (condition) alors
Début si
instructions exécutées si la condition est vraie.
Fin si
Optionnellement, on peut ajouter un bloc sinon :
Si (condition) alors
Début si
instructions exécutées si la condition est vraie.
Fin si
Sinon
Début sinon
instructions exécutées si la condition est fausse.
Fin sinon
Syntaxe de base
if condition:
# L'indentation permet de délimiter le bloc d'instruction concernée par if
# Si la condition est vraie, on exécute le bloc, une fois.
Exemple
x = int(input("Entrer un nombre entier :"))
if x == 19:
print("Succès !")
print("Au revoir.")
Exécution du programme
- ligne 1 : la machine attend que l'utilisateur saisisse une valeur.
Supposons que l'utilisateur entre la valeur 19. Cette valeur est stockée dansx. - ligne 2 : la condition
x == 19est vraie. On exécute donc le bloc d'instruction duif, ligne 3. - ligne 3 : Affiche le message
“Succès” - ligne 4 : indentation (marge à gauche), le
ifest terminé. Affichage du message“Au revoir.”.
Autre exemple :
- ligne 1 : la machine attend que l'utilisateur saisisse une valeur.
Supposons que l'utilisateur entre la valeur 25. Cette valeur est stockée dansx. - ligne 2 : la condition
x == 19est fausse. On exécute donc pas le bloc d'instruction duif. On passe à la suite. - ligne 4 : l'absence d'indentation signale la fin de la structure
if. On continue donc à partir de là. Affichage du message“Au revoir.”.
Conditions
C'est une expression devant pouvoir être interprétée comme True ou False.
a == bvrai si a est égal à ba != bvrai si a est différent de ba ⇐ bvrai si a est inférieur ou égal à ba < bvrai si a est strictement inférieur à ba > bvrai si a est strictement supérieur à ba >= bvrai si a est supérieur ou égal à b
Attention, Python considère que 0 == False est vrai. Si cela pose un problème, on pourra utiliser une égalité plus stricte. Écrire : a is b
Il faut aussi mentionner les opérateurs logiques :
a and bvrai quand les deux sont vraisa or bvrai quand au moins l'un des deux est vrainot avrai quand a est faux
# exemple : a > 0 and a <= 100 # vrai si a dans ]0;100]
Si ... sinon
if condition:
# L'indentation permet de délimiter le bloc d'instruction concernée par if
# Si la condition est vraie, on exécute le bloc, une fois.
else:
# L'indentation permet de délimiter le bloc d'instruction concernée par else.
# Ce bloc est exécuté une fois si la condition est fausse.
Exemple
x = int(input"Entrer un nombre entier :"))
if x == 19:
print("Succès !")
else:
print("Raté !")
print("Au revoir.")
Exécuction du programme
- ligne 1 : la machine attend que l'utilisateur saisisse une valeur.
Supposons que l'utilisateur entre la valeur 19. Cette valeur est stockée dansx. - ligne 2 : la condition
x == 19est vraie. On exécute donc le bloc d'instruction duif, ligne 3. - ligne 3 : Affiche le message
“Succès” - ligne 4 : fin de l'indentation du
if, le blocifest terminé. Début d'un blocelsequi sera ignoré (puisque la condition était vraie) suite de l'exécution après le blocelse - ligne 6 : fin indentation
else. L'exécution reprend là. Affichage du message“Au revoir.”.
Autre exemple d’exécution du programme
- ligne 1 : la machine attend que l'utilisateur saisisse une valeur.
Supposons que l'utilisateur entre la valeur 25. Cette valeur est stockée dansx. - ligne 2 : la condition
x == 19est fausse. Il faut sauter le blocif. Reprise de l'exécution après le bloc d'indentation duif. - ligne 4 : fin de l'indentation du
if, l'exécution reprend là. C'est unelsequ'il faut exécuter puisque la condition était fausse. - ligne 5: affichage du message
“Raté !. - ligne 6 : fin indentation
else. Affichage du message“Au revoir.”.
Si ... sinon si ... sinon
On peu imbriquer des conditions en ajoutant des else if ce qui est abrégé par elif.
# On examine les conditions.
# La première à être vraie déclenche l'exécution du bloc correspondant.
# Si toutes sont fausses, c'est le bloc <b>else</b> qui est exécuté.
# On peut enchaîner plusieurs elif
if condition_1:
# Toujours une indentation...
# Bloc d'instructions exécutées si condition_1 vraie
elif condition_2:
# Bloc d'instructions exécutées si condition_1 était fausse
# et que condition_2 est vraie
else:
# Bloc d'instructions exécutées si condition_1
# et condition_2 fausses
# fin du bloc if
Exemple
x = int(input("Entrer un nombre entier entre 10 et 20:"))
if x < 10:
print("On vous a dit au moins 10 !")
elif x > 20:
print("On vous a dit au plus 20 !")
else:
print("Merci.")
print("Au revoir")
