🔀 Les conditions : les choix
Jusqu'à présent, nos programmes exécutaient leurs instructions de haut en bas sans se poser de questions. Grâce aux conditions, un programme peut désormais prendre des décisions et adapter son comportement selon les données qu'il reçoit.
Par exemple :
- Afficher un message différent selon l'âge d'une personne.
- Donner un résultat particulier lorsque deux valeurs sont identiques.
- Exécuter certaines instructions uniquement dans certains cas.
🚦 Les booléens et les comparaisons
Une condition repose sur une valeur logique appelée booléen. Il n'existe que deux valeurs possibles :
- True : vrai
- False : faux
est_majeur = True
est_connecte = False
Les opérateurs de comparaison permettent de comparer deux valeurs. Le résultat obtenu est toujours un booléen.
| Opérateur | Signification |
|---|---|
| == | Est égal à |
| != | Est différent de |
| < | Est inférieur à |
| <= | Est inférieur ou égal à |
| > | Est supérieur à |
| >= | Est supérieur ou égal à |
Exemples :
x = 3
print(x == 2)
print(x > 10)
print(x < 10)
Résultat :
False
False
True
Les comparaisons fonctionnent également avec les chaînes de caractères.
print("Chat" == "Chat")
print("Chat" == "Chien")
print("Chat" < "Chien")
Résultat :
True
False
True
Attention : ne pas confondre l'opérateur d'affectation = et l'opérateur de comparaison ==.
age = 20 # Affectation
age == 20 # Comparaison
❓ Les conditions avec if
L'instruction if permet d'exécuter un bloc d'instructions uniquement lorsque la condition est vraie.
if condition:
instruction_1
instruction_2
Les deux-points (:) annoncent le début du bloc conditionnel. Toutes les lignes indentées appartiennent à la condition.
Exemple :
age = 20
if age >= 18:
print("Vous êtes majeur")
print("Fin du programme")
Résultat : Si la condition est fausse, le bloc n'est pas exécuté.
Vous êtes majeur
Fin du programme
age = 15
if age >= 18:
print("Vous êtes majeur")
print("Fin du programme")
Résultat :
Fin du programme
☑️ Les choix multiples avec elif et else
L'instruction else permet de définir ce qu'il faut faire lorsque la condition est fausse.
age = 15
if age >= 18:
print("Vous êtes majeur")
else:
print("Vous êtes mineur")
Résultat :
Vous êtes mineur
Lorsqu'il existe plusieurs possibilités, on utilise elif (abréviation de "else if").
if condition1:
instructions
elif condition2:
instructions
elif condition3:
instructions
else:
instructions
Les conditions sont évaluées dans l'ordre. Dès qu'une condition est vraie, son bloc est exécuté puis Python quitte la structure conditionnelle.
Exemple :
note = 14
if note < 10:
print("Ajourné")
elif note < 16:
print("Admis")
else:
print("Très bien")
Résultat :
Admis
Un bloc else est facultatif.
note = 18
if note >= 10:
print("Validation")
🔀 Les opérateurs logiques
Les opérateurs logiques permettent de combiner plusieurs conditions.
Opérateur and
L'opérateur and signifie "ET". Toutes les conditions doivent être vraies.
age = 20
permis = True
if age >= 18 and permis:
print("Vous pouvez conduire")
Opérateur or
L'opérateur or signifie "OU". Une seule condition vraie suffit.
jour = "samedi"
if jour == "samedi" or jour == "dimanche":
print("C'est le week-end")
Opérateur not
L'opérateur not inverse le résultat d'une condition.
est_connecte = False
if not est_connecte:
print("Veuillez vous connecter")
Table de vérité
| A | B | A and B | A or B |
|---|---|---|---|
| True | True | True | True |
| True | False | False | True |
| False | True | False | True |
| False | False | False | False |