Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Opérateurs de comparaison | Booléens et Comparaisons
Types de Données en Python

bookOpérateurs de comparaison

Les comparaisons permettent à votre programme de poser des questions oui/non sur des valeurs :

  • Sont-elles identiques ?
  • Celle-ci est-elle plus grande ?
  • Ce nombre se situe-t-il dans une plage donnée ?

Une comparaison renvoie un booléen (True ou False) et constitue la base de la logique if/while.

L'essentiel

Python propose six opérateurs de comparaison (==, !=, <, <=, >, >=) pour tester l'égalité et l'ordre entre des valeurs ; chaque comparaison évalue à True ou False.

Égalité — ==

Vérifie si deux valeurs sont identiques.

12
print(5 == 5) # True print("apple" == "Apple") # False (case matters)
copy
Note
Remarque

= assigne une valeur à une variable, tandis que == compare deux valeurs.

Inégalité — !=

Vérifie si deux valeurs sont différentes.

12
print(5 != 3) # True print("cat" != "cat") # False
copy

Supérieur à — >

Vrai si la valeur de gauche est strictement supérieure à celle de droite.

12
print(7 > 9) # False print(12 > 3) # True
copy

Inférieur à — <

Vrai si la valeur de gauche est strictement inférieure à celle de droite.

12
print(2 < 10) # True print("a" < "b") # True (lexicographic order)
copy

Supérieur ou égal à — >=

Vrai si la valeur de gauche est supérieure ou égale à celle de droite.

12
print(7 >= 7) # True print(4 >= 9) # False
copy

Inférieur ou égal — <=

Vrai si la valeur de gauche est inférieure ou égale à celle de droite.

12
print(10 <= 9) # False print(5 <= 5) # True
copy

Comparaisons chaînées

Python permet d'écrire des intervalles de manière naturelle : 0 < x < 10 signifie « x est supérieur à 0 et inférieur à 10 ». En interne, cela fonctionne comme (0 < x) and (x < 10).

123
x = 7 print(0 < x < 10) # True print(5 <= x <= 7) # True
copy

Cette écriture est claire et évite de répéter x.

Subtilités des nombres à virgule flottante (petites erreurs d'arrondi)

Certains décimaux (comme 0.1) ne peuvent pas être représentés exactement en binaire. C'est pourquoi l'égalité stricte sur les flottants peut donner des résultats inattendus.

1
print(0.1 + 0.2 == 0.3) # False in many environments
copy

Lors de la comparaison de flottants pour l'« égalité », privilégier une vérification avec tolérance.

12
import math print(math.isclose(0.1 + 0.2, 0.3, rel_tol=1e-9)) # True
copy

Il ne s'agit pas de dire « exactement égal », mais « suffisamment proche ».

Comparaison de chaînes (casse et ordre)

Les comparaisons de chaînes sont sensibles à la casse et lexicographiques (caractère par caractère selon l'ordre Unicode).

12
print("apple" == "Apple") # False (case matters) print("apple" < "banana") # True ("a" comes before "b")
copy

Pour des vérifications insensibles à la casse, normaliser d'abord les deux côtés.

12
s1, s2 = "Hello", "heLLo" print(s1.lower() == s2.lower()) # True
copy

1. Compléter les espaces avec True ou False :

2. Quelle expression unique vérifie correctement que x est compris entre 1 et 5 inclus (en utilisant le chaînage) ?

3. Quelle comparaison de chaînes est True ?

question-icon

Compléter les espaces avec True ou False :

5 == 5
3 < 2

9 >= 9

"A" == "a"

0 < 7 <= 7

Click or drag`n`drop items and fill in the blanks

question mark

Quelle expression unique vérifie correctement que x est compris entre 1 et 5 inclus (en utilisant le chaînage) ?

Select the correct answer

question mark

Quelle comparaison de chaînes est True ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 2

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Suggested prompts:

Can you explain more about how chained comparisons work in Python?

What are some common pitfalls when comparing floating-point numbers?

How do I perform a case-insensitive string comparison in Python?

Awesome!

Completion rate improved to 5

bookOpérateurs de comparaison

Glissez pour afficher le menu

Les comparaisons permettent à votre programme de poser des questions oui/non sur des valeurs :

  • Sont-elles identiques ?
  • Celle-ci est-elle plus grande ?
  • Ce nombre se situe-t-il dans une plage donnée ?

Une comparaison renvoie un booléen (True ou False) et constitue la base de la logique if/while.

L'essentiel

Python propose six opérateurs de comparaison (==, !=, <, <=, >, >=) pour tester l'égalité et l'ordre entre des valeurs ; chaque comparaison évalue à True ou False.

Égalité — ==

Vérifie si deux valeurs sont identiques.

12
print(5 == 5) # True print("apple" == "Apple") # False (case matters)
copy
Note
Remarque

= assigne une valeur à une variable, tandis que == compare deux valeurs.

Inégalité — !=

Vérifie si deux valeurs sont différentes.

12
print(5 != 3) # True print("cat" != "cat") # False
copy

Supérieur à — >

Vrai si la valeur de gauche est strictement supérieure à celle de droite.

12
print(7 > 9) # False print(12 > 3) # True
copy

Inférieur à — <

Vrai si la valeur de gauche est strictement inférieure à celle de droite.

12
print(2 < 10) # True print("a" < "b") # True (lexicographic order)
copy

Supérieur ou égal à — >=

Vrai si la valeur de gauche est supérieure ou égale à celle de droite.

12
print(7 >= 7) # True print(4 >= 9) # False
copy

Inférieur ou égal — <=

Vrai si la valeur de gauche est inférieure ou égale à celle de droite.

12
print(10 <= 9) # False print(5 <= 5) # True
copy

Comparaisons chaînées

Python permet d'écrire des intervalles de manière naturelle : 0 < x < 10 signifie « x est supérieur à 0 et inférieur à 10 ». En interne, cela fonctionne comme (0 < x) and (x < 10).

123
x = 7 print(0 < x < 10) # True print(5 <= x <= 7) # True
copy

Cette écriture est claire et évite de répéter x.

Subtilités des nombres à virgule flottante (petites erreurs d'arrondi)

Certains décimaux (comme 0.1) ne peuvent pas être représentés exactement en binaire. C'est pourquoi l'égalité stricte sur les flottants peut donner des résultats inattendus.

1
print(0.1 + 0.2 == 0.3) # False in many environments
copy

Lors de la comparaison de flottants pour l'« égalité », privilégier une vérification avec tolérance.

12
import math print(math.isclose(0.1 + 0.2, 0.3, rel_tol=1e-9)) # True
copy

Il ne s'agit pas de dire « exactement égal », mais « suffisamment proche ».

Comparaison de chaînes (casse et ordre)

Les comparaisons de chaînes sont sensibles à la casse et lexicographiques (caractère par caractère selon l'ordre Unicode).

12
print("apple" == "Apple") # False (case matters) print("apple" < "banana") # True ("a" comes before "b")
copy

Pour des vérifications insensibles à la casse, normaliser d'abord les deux côtés.

12
s1, s2 = "Hello", "heLLo" print(s1.lower() == s2.lower()) # True
copy

1. Compléter les espaces avec True ou False :

2. Quelle expression unique vérifie correctement que x est compris entre 1 et 5 inclus (en utilisant le chaînage) ?

3. Quelle comparaison de chaînes est True ?

question-icon

Compléter les espaces avec True ou False :

5 == 5
3 < 2

9 >= 9

"A" == "a"

0 < 7 <= 7

Click or drag`n`drop items and fill in the blanks

question mark

Quelle expression unique vérifie correctement que x est compris entre 1 et 5 inclus (en utilisant le chaînage) ?

Select the correct answer

question mark

Quelle comparaison de chaînes est True ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 2
some-alt