Connexion élèves

Choisir le(s) module(s) à installer :

Un autre type de variable particulier : les booléens

Vous avez vu que Python possède un type de variable de base appelé booléen ( bool ) : ces variables ne peuvent contenir que deux valeurs possibles, True ( = Vrai ) ou False ( = Faux ).

Ce sont les variables qui permettent en Python d'utiliser la logique booléenne que vous avez déjà vue lors du chapitre sur les portes logiques; True est l'équivalent de "1", et False de "0", mais la logique utilisée est la même !

Il y a de nombreuses situations en Python où ce type de variable trouvera son utilité, nous les verrons au fur et à mesure; pour l'instant, nous nous contenterons de manipuler des expressions dans lesquelles ces variables booléennes interviennent.

Variables et expressions booléennes

On peut directement initialiser une variable avec la valeur True ou False :


bool1 = True # attention, PAS DE GUILLEMETS, ce n'est pas une CHAÎNE DE CARACTÈRES...
bool2 = False
			 

Qu'en faire ensuite ? Et bien, utiliser ces variables dans des expressions, dites expressions booléennes, car elles ne s'évaluent pas à une valeur numérique, mais à True ou False uniquement

Bien entendu, les opérateurs utilisés dans ce type d'expressions ne sont donc pas les opérateurs mathématiques "habituels", mais ceux que vous avez utilisé dans le chapitre sur la logique booléenne :

Tables de vérités

Par analogie avec ce que vous connaissez déjà, établir les tables de vérité des 3 opérateurs précédents :

and

a b a and b
True True ? True
True False ? False
False True ? False
False False ? False

or

a b a or b
True True ? True
True False ? True
False True ? True
False False ? False

not

a not a
True ? False
False ? True

Des expressions plus complexes...

Prévoir ( puis vérifier ! ) la valeur des expressions booléennes suivantes :

a b c d Expression Résultat
True True not ( a and b ) ? False
True False True a or ( b and not c ) ? True
False True True True (a and not b) or (not c and d) ? False

Des expressions booléennes plus utiles...

Ok, il sera très rare que vous ayez besoin en Python d'expressions booléennes aussi complexes que les exemples précédents...

Par contre, d'autres expressions booléennes beaucoup plus utiles peuvent être évaluées en Python, voyez l'exemple ci-dessous :

a = 45 print(a <= 100) print(a > 30 and a < 35)

Examinez le résultat affiché par les deux instructions print aux lignes 2 et 3 : ce sont des valeurs booléennes !

En effet, les expressions a <= 100 et a > 30 and a < 35 ne sont pas des expressions arithmétiques, mais bien des expressions booléennes :

Opérateurs de comparaison utilisables en Python

Opérateur Signification Commentaire
== égal à ATTENTION : il s'agit bien d'un DOUBLE signe "égal"...
C'est une erreur classique de ne mettre qu'un seul "égal", qui est l'instruction d'affectation ( qui est donc, elle, toujours vraie !!! )
!= différent de
> strictement supérieur à
< strictement inférieur à
>= supérieur ou égal à
<= inférieur ou égal à
in présent dans C'est l'opérateur qui permet de tester l'appartenance d'un élément à un autre, par exemple un caractère particulier dans une chaîne, un élément dans un fichier ou une liste,...de manière générale, un élément dans une structure itérable.
not in pas présent dans C'est l'opérateur inverse, celui qui permet de tester l'absence d'un élément dans une structure itérable.

Ces opérateurs de comparaison peuvent être utilisés avec des nombres entiers, des flottants ( avec précaution !! ), des chaînes de caractères ( dans ce cas, c'est l'ordre alphabétique qui sert de critère de comparaison ).

Vous retrouverez ces opérateurs dans l'évaluation des conditions dans un prochain chapitre.

QCM d'application

Que s'affiche-t-il après exécution des scripts suivants ?