ParcoursOuvrir l'appli

Vrai ou faux : les booléens

Python, les conditions · 40 min

Un programme qui décide

Jusqu'ici, tes programmes faisaient toujours la même chose, ligne après ligne. Mais un vrai programme doit réagir selon la situation :

Pour décider, l'ordinateur pose des questions auxquelles on ne peut répondre que par oui ou par non. « Le solde est-il supérieur au prix ? » « Le mot de passe est-il égal à celui enregistré ? »

C'est le sujet de tout ce module. On commence par la brique de base : la réponse oui ou non elle-même.

Le type `bool`

pluie = True
soleil = False
type(pluie)      # <class 'bool'>

Tu ne taperas pas souvent True toi-même. La plupart du temps, les booléens sont fabriqués par des comparaisons.

Les comparaisons

Opérateur Signifie Exemple Résultat
== est égal à 5 == 5 True
!= est différent de 5 != 3 True
< est strictement inférieur à 3 < 5 True
> est strictement supérieur à 3 > 5 False
<= est inférieur ou égal à 5 <= 5 True
>= est supérieur ou égal à 4 >= 5 False

On peut ranger le résultat dans une variable :

age = 20
majeur = age >= 18     # majeur vaut True

Lis cette ligne comme toujours, de droite à gauche : Python calcule age >= 18 (ça donne True), puis range True dans majeur.

Comment taper ces signes

< et > sont sur la touche à gauche du W sur un clavier AZERTY (> avec Maj). ! est à droite du point-virgule.

Le piège mortel : `=` contre `==`

C'est l'erreur la plus classique de tous les débutants, dans tous les langages :

Écriture Ce que ça fait
age = 18 range 18 dans age (affectation : une action)
age == 18 demande si age vaut 18 (comparaison : une question, qui répond True ou False)

Comparer des textes marche aussi, mais attention à la casse :

"oui" == "oui"     # True
"oui" == "Oui"     # False : la majuscule change tout
"5" == 5           # False : un texte n'est jamais égal à un nombre

Pour comparer sans tenir compte des majuscules, on met tout en minuscules d'abord : reponse.lower() == "oui".

Pratique : Pose des questions à Python

Prévois chaque réponse (True ou False) avant d'appuyer sur Entrée.

Un terminal simulé t'attend dans l'appli, sans rien installer. Pratiquer

Un correcteur plus exigeant

À partir de maintenant, ton code doit marcher pour toutes les valeurs, pas seulement pour celle de l'énoncé.

Le correcteur va donc relancer ton programme plusieurs fois, en changeant les valeurs des lignes marquées # donné : un autre âge, une autre note, un autre prix. Si tu écris la réponse à la main au lieu d'une comparaison, il le verra.

Exercice : Majeur ?

Range dans majeur un booléen qui dit si age est au moins 18. Utilise une comparaison, pas True ou False écrit à la main.

Voir une solution
age = 20   # donné

majeur = age >= 18

Dans l'appli, ton code est exécuté et corrigé automatiquement. Faire l'exercice

Exercice : Pair ?

Range dans pair un booléen qui dit si n est pair. Rappel : un nombre est pair quand le reste de sa division par 2 vaut 0.

Voir une solution
n = 14   # donné

pair = n % 2 == 0

Dans l'appli, ton code est exécuté et corrigé automatiquement. Faire l'exercice

Exercice : Le moins cher

Deux boutiques vendent le même sac de riz. Range dans a_moins_cher un booléen qui dit si la boutique A est strictement moins chère que la boutique B.

Voir une solution
prix_a = 18500   # donné
prix_b = 19000   # donné

a_moins_cher = prix_a < prix_b

Dans l'appli, ton code est exécuté et corrigé automatiquement. Faire l'exercice

Exercice : Le bon code, quelle que soit la casse

Un utilisateur tape un code promo. Le code secret est noel2026. Range dans valide un booléen qui dit si la saisie correspond au code, sans tenir compte des majuscules ni des espaces autour.

" NOEL2026 " doit être accepté.

Voir une solution
saisie = "  NOEL2026 "   # donné
CODE = "noel2026"

valide = saisie.strip().lower() == CODE

Dans l'appli, ton code est exécuté et corrigé automatiquement. Faire l'exercice

Teste-toi

Que vaut x après ces deux lignes ? python x = 4 x == 5
  1. 5
  2. 4 (bonne réponse)
  3. True
  4. False

La deuxième ligne pose la question « x vaut-il 5 ? » (réponse : False), puis jette la réponse. x vaut toujours 4.

Lequel de ces résultats vaut True ?
  1. 3 >= 4
  2. "Oui" == "oui"
  3. 10 != 10
  4. 2 * 3 <= 6 (bonne réponse)

Le calcul passe avant la comparaison : 2 * 3 vaut 6, et 6 <= 6 est vrai.