Menu
Coddy logo textTech

Qu'est-ce qu'un booléen ?

En programmation, un booléen est un type de données qui n'a que deux valeurs, vrai et faux. Les programmes obtiennent des booléens à partir de comparaisons comme age >= 18 et s'en servent pour décider quel code s'exécute, dans les instructions if et les conditions de boucle.

Par Kevin Spektor, Cofondateur et CTO

Mis à jour le 24 septembre 2026

Chaque décision que prend un programme se ramène à une question à deux réponses possibles : le mot de passe est-il correct, le panier est-il vide, le minuteur a-t-il atteint zéro. Le booléen est le type de données qui contient ces réponses. Il doit son nom à George Boole, un mathématicien anglais qui a décrit une algèbre des valeurs vrai et faux dans des livres publiés en 1847 et 1854.

D'où viennent les booléens

Tu tapes rarement True ou False directement. La plupart des booléens sont produits par des comparaisons, qui posent une question sur deux valeurs et y répondent par un booléen :

OpérateurSignificationExempleRésultat
==égal à3 == 3True
!=différent de3 != 3False
<, >inférieur à, supérieur à2 < 5True
<=, >=au plus, au moins17 >= 18False

Un booléen peut être rangé dans une variable comme n'importe quelle autre valeur et combiné avec d'autres booléens :

False
<class 'bool'>
False
True

Combiner des booléens : and, or, not

Trois opérateurs logiques construisent des conditions plus larges à partir de plus petites. and n'est vrai que si les deux côtés sont vrais. or est vrai si au moins un côté est vrai. not inverse une seule valeur.

aba and ba or bnot a
TrueTrueTrueTrueFalse
TrueFalseFalseTrueFalse
FalseTrueFalseTrueTrue
FalseFalseFalseFalseTrue

Python écrit ces opérateurs en toutes lettres. C, Java et JavaScript utilisent des symboles : && pour et, || pour ou, ! pour non. Les quatre langages arrêtent l'évaluation dès que la réponse est connue, donc dans a and b, le côté droit n'est jamais vérifié quand a est faux. C'est ce qu'on appelle l'évaluation en court-circuit. Le guide des opérateurs logiques Python l'explique en détail.

Comment les booléens pilotent un programme

Une instruction if n'exécute son bloc que si sa condition est vraie. Une boucle while répète son bloc tant que sa condition reste vraie, donc chaque boucle est pilotée par un booléen vérifié à nouveau avant chaque passage. Cette répétition s'appelle l'itération.

Hot day
Countdown: 3
Countdown: 2
Countdown: 1

Quand count atteint 0, la condition count > 0 devient False et la boucle s'arrête. Si la condition ne pouvait jamais devenir fausse, la boucle tournerait indéfiniment.

Les booléens comme 1 et 0

Un booléen n'a besoin que d'un seul bit d'information : 1 pour vrai, 0 pour faux. En pratique, les langages stockent un booléen dans au moins un octet entier, parce qu'un octet est la plus petite unité de mémoire qui a sa propre adresse. En C, un bool de <stdbool.h> occupe 1 octet avec gcc et clang. Les programmes qui ont besoin de millions d'indicateurs en regroupent 8 dans chaque octet grâce aux opérateurs bit à bit.

Les langages ne sont pas d'accord sur la question de savoir si un booléen est aussi un nombre. En Python, bool est une sous-classe de int, donc True vaut 1 et False vaut 0. Cela facilite le comptage :

True True
2
3 correct

JavaScript donne aussi 2 pour true + true. C n'avait pas de type booléen avant C99 et considère toujours tout nombre différent de zéro comme vrai. Java est strict : if (1) ne compile pas, parce qu'une condition Java doit être un boolean.

Valeurs truthy et falsy

Python et JavaScript te permettent d'utiliser n'importe quelle valeur comme condition, pas seulement True et False. Les valeurs qui comptent comme fausses sont dites falsy ; toutes les autres sont truthy.

0 -> False
42 -> True
'' -> False
'False' -> True
[] -> False
[0] -> True
None -> False

En Python, zéro, les chaînes vides, les collections vides et None sont falsy. La chaîne "False" est truthy, parce que c'est une chaîne qui contient cinq caractères. JavaScript a ses propres valeurs falsy, dont false, 0, "", null, undefined et NaN, et là-bas un tableau vide [] est truthy. Voir truthy et falsy en JavaScript pour toutes les règles.

Erreurs courantes

Comparer à True. if is_ready == True: fonctionne, mais if is_ready: dit la même chose en plus court. Pour le cas faux, écris if not is_ready:.

Traiter du texte comme un booléen. Ce qui vient d'un utilisateur, d'un fichier ou d'un formulaire arrive sous forme de chaîne, donc bool("false") vaut True. Compare plutôt le texte : answer == "yes".

Mauvaise casse. Python écrit True et False ; JavaScript, Java et C écrivent true et false. Taper true en Python donne NameError: name 'true' is not defined.

Des noms flous. Nomme un booléen comme une question fermée, par exemple is_valid, has_access ou can_edit, pour qu'une condition se lise comme une phrase : if user.can_edit:.

Pour aller plus loin

Les booléens décident combien de fois une boucle tourne, donc ce qu'est l'itération est la suite naturelle, et ce qu'est un bit montre le 0 et le 1 qui se cachent sous chaque vrai et chaque faux. Pour les détails propres à Python, lis nombres et booléens, puis entraîne-toi aux conditions dans le cours Python.

Questions fréquentes

Quel est un exemple de booléen ?
La comparaison 5 > 3 est une expression booléenne, et sa valeur est True. Une variable comme is_logged_in = False contient une valeur booléenne. Dans le catalogue d'une bibliothèque, la recherche chats AND chiens est une requête booléenne qui utilise la même logique.
Un booléen vaut-il 1 ou 0 ?
Un booléen a deux valeurs, et de nombreux langages les représentent par 1 pour vrai et 0 pour faux. En Python, True == 1 vaut True, et en C tout nombre différent de zéro compte comme vrai. Java les sépare : un boolean Java ne peut pas du tout être utilisé comme un nombre.
Un booléen, c'est juste oui ou non ?
Oui. Un booléen contient exactement une valeur parmi deux, que tu peux lire comme oui ou non, allumé ou éteint, vrai ou faux. Quand quelque chose a plus de deux états, comme une commande en attente, payée ou remboursée, utilise une chaîne ou une énumération plutôt que plusieurs booléens.
Qu'est-ce qu'un booléen en Python ?
Le type booléen de Python est bool, et ses deux valeurs sont True et False, écrites avec une majuscule. bool est une sous-classe de int, donc True se comporte comme 1 dans les calculs. La fonction bool() convertit n'importe quelle valeur en True ou False selon les règles de vérité de Python.
Qu'est-ce qu'une recherche booléenne ?
Une recherche booléenne combine des mots-clés avec les opérateurs AND, OR et NOT pour affiner ou élargir les résultats. python AND tutoriel exige les deux mots, python OR java accepte l'un ou l'autre, et python NOT serpent exclut les pages qui contiennent le second mot. Les catalogues de bibliothèque et les bases de données de recherche la prennent en charge directement, et Google accepte OR et un signe moins pour NOT.
Coddy programming languages illustration

Apprendre à coder avec Coddy

COMMENCER