Bonjour ! Dans la leçon précédente, vous avez appris à stocker des informations dans des variables en utilisant les types de données de base. C'est une étape essentielle. Maintenant que nos données sont dans des "boîtes" étiquetées, il est temps d'apprendre à les manipuler, les transformer et les comparer.
Cette leçon se concentre sur les opérateurs, qui sont les symboles que Python utilise pour effectuer des opérations. Nous allons couvrir trois familles fondamentales : les opérateurs arithmétiques pour les calculs, les opérateurs d'affectation pour assigner et mettre à jour des valeurs, et les opérateurs de comparaison pour évaluer les relations entre les valeurs. La maîtrise de ces outils est indispensable pour écrire des programmes qui vont au-delà du simple stockage de données.
Les opérateurs arithmétiques
Comme leur nom l'indique, les opérateurs arithmétiques servent à effectuer des opérations mathématiques. Ayant une formation en mathématiques, ces concepts vous seront familiers, mais il est important de maîtriser la syntaxe spécifique à Python.
La vidéo suivante de la chaîne Elzero Web School, que vous appréciez, est une excellente introduction en arabe à ces opérateurs.
Learn Python in Arabic #020 - Arithmetic Operators
Cette vidéo couvre tous les opérateurs arithmétiques de base en Python, de l'addition à l'exponentiation, et aborde même l'ordre de priorité des opérations.
Regardez l'intégralité de la vidéo, de début à la fin. Elle vous donnera une vue d'ensemble claire et pratique.
Pour résumer et formaliser ce que vous avez vu, voici les principaux opérateurs arithmétiques en Python :

- Addition (
+) et Soustraction (-): Fonctionnent comme en mathématiques. - Multiplication (
*): Utilise un astérisque. - Division (
/): Donne toujours un résultat de typefloat(nombre à virgule). Par exemple,10 / 2donne2.0. - Division entière (
//): Donne le quotient de la division, arrondi à l'entier inférieur. C'est la partie entière du résultat. Par exemple,10 // 3donne3. - Modulo (
%): Donne le reste d'une division entière. Par exemple,10 % 3donne1. C'est très utile, par exemple, pour vérifier si un nombre est pair (nombre % 2 == 0). - Exponentiation (
**): Élève un nombre à une puissance. Par exemple,2 ** 3équivaut à , soit8.
L'article suivant de Real Python est une référence très complète si vous souhaitez approfondir chaque opérateur.
Operators and Expressions in Python
Cet article détaille chaque opérateur arithmétique avec des exemples clairs.
Lisez la section Arithmetic Operators. Portez une attention particulière aux exemples qui illustrent la différence entre la division standard (/) et la division entière (//).
Ordre de priorité (Precedence)
Python respecte l'ordre de priorité des opérations mathématiques (PEMDAS/BODMAS). L'exponentiation (**) est évaluée en premier, suivie de la multiplication/division/modulo, et enfin de l'addition/soustraction. Vous pouvez utiliser des parenthèses () pour forcer un ordre d'évaluation différent, exactement comme en mathématiques.
Pratique dans Jupyter :
Ouvrez un notebook et essayez ces opérations :
a = 15
b = 4
print(f"a + b = {a + b}")
print(f"a - b = {a - b}")
print(f"a * b = {a * b}")
print(f"a / b = {a / b}") # Division => float
print(f"a // b = {a // b}") # Division entière => int
print(f"a % b = {a % b}") # Reste (Modulo)
print(f"a ** b = {a ** b}") # Exponentiation
# Ordre de priorité
print(f"10 + 2 * 3 = {10 + 2 * 3}")
print(f"(10 + 2) * 3 = {(10 + 2) * 3}")
Les opérateurs d'affectation
Vous connaissez déjà l'opérateur d'affectation de base, le signe égal (=), qui sert à assigner une valeur à une variable. Python propose également des opérateurs d'affectation augmentée, qui sont des raccourcis très pratiques pour modifier la valeur d'une variable.
Par exemple, pour ajouter 5 à une variable total, au lieu d'écrire total = total + 5, vous pouvez simplement écrire total += 5. Cela est plus concis et très courant en programmation.

Ces opérateurs augmentés existent pour tous les opérateurs arithmétiques : +=, -=, *=, /=, //= ,%=, **=.
La vidéo suivante démontre l'utilisation de ces opérateurs.
2.5. Operators in Python | Python Tutorial |Arithmetic Assignment Comparison Logical Identity Member
Cette section de la vidéo de Siddhardhan explique clairement le concept des opérateurs d'affectation, en partant de l'opérateur de base = pour aller vers les opérateurs augmentés.
Regardez la partie sur les opérateurs d'affectation. L'exemple avec a += 5 est une parfaite illustration de leur utilité.
Pour une description formelle de ces opérateurs, vous pouvez consulter la documentation de Real Python.
Operators and Expressions in Python
Cette section explique comment les opérateurs d'affectation augmentée fonctionnent.
Lisez la section Augmented Assignment. Le tableau récapitulatif est particulièrement utile.
Pratique dans Jupyter :
Testez ces opérateurs pour voir comment ils modifient la valeur d'une variable.
# Initialisation
compteur = 0
print(f"Valeur initiale : {compteur}")
# Incrémentation
compteur += 10 # Équivaut à: compteur = compteur + 10
print(f"Après += 10 : {compteur}")
# Décrémentation
compteur -= 3 # Équivaut à: compteur = compteur - 3
print(f"Après -= 3 : {compteur}")
# Multiplication
compteur *= 2 # Équivaut à: compteur = compteur * 2
print(f"Après *= 2 : {compteur}")
Les opérateurs de comparaison
Les opérateurs de comparaison sont utilisés pour comparer deux valeurs. Le résultat d'une comparaison est toujours une valeur booléenne : True ou False. Ces opérateurs sont le fondement de la prise de décision dans les programmes.
Voici les opérateurs de comparaison en Python :
| Opérateur | Description | Exemple | Résultat |
|---|---|---|---|
== |
Égal à | a == b |
False |
!= |
Différent de | a != b |
True |
> |
Strictement supérieur à | a > b |
True |
< |
Strictement inférieur à | a < b |
False |
>= |
Supérieur ou égal à | a >= b |
True |
<= |
Inférieur ou égal à | a <= b |
False |
| (en supposant a=5 et b=3) |
Attention, erreur classique de débutant !
Ne confondez pas == (comparaison d'égalité) avec = (affectation de variable).
x = 5affecte la valeur 5 à la variablex.x == 5vérifie si la valeur dexest égale à 5 et renvoieTrueouFalse.
La vidéo suivante illustre parfaitement le fonctionnement de ces opérateurs.
2.5. Operators in Python | Python Tutorial |Arithmetic Assignment Comparison Logical Identity Member
Cette section montre comment comparer des variables et comment le résultat est toujours un booléen.
Regardez la partie sur les opérateurs de comparaison. Observez bien les sorties True et False pour chaque opération.
La comparaison de nombres à virgule flottante (float) peut parfois réserver des surprises à cause de la manière dont ils sont stockés en mémoire. Pour des comparaisons robustes, il est souvent préférable de vérifier si les nombres sont "suffisamment proches" plutôt que strictement égaux. L'article de Real Python aborde ce point plus en détail.
Operators and Expressions in Python
Cette ressource offre une excellente analyse des opérateurs de comparaison et de leurs subtilités.
Lisez la section Comparison Operators. Il est intéressant de noter la partie sur la comparaison des floats, qui est une bonne pratique à connaître.
Pratique dans Jupyter :
Expérimentez avec les comparaisons pour bien comprendre leur résultat.
x = 10
y = 20
print(f"x == y : {x == y}")
print(f"x != y : {x != y}")
print(f"x > y : {x > y}")
print(f"x <= y : {x <= y}")
nom = "ali"
print(f'nom == "ali" : {nom == "ali"}')
print(f'nom == "Ahmed" : {nom == "Ahmed"}')
Conclusion
Excellent travail ! Vous avez maintenant les outils pour non seulement stocker des données, mais aussi pour effectuer des calculs et des comparaisons logiques.
Voici les points clés à retenir :
- Les opérateurs arithmétiques (
+,-,*,/,//,%,**) permettent d'effectuer des calculs mathématiques. - Les opérateurs d'affectation (
=,+=,-=, etc.) servent à assigner et à mettre à jour les valeurs des variables de manière concise. - Les opérateurs de comparaison (
==,!=,>,<, etc.) évaluent la relation entre deux valeurs et renvoient toujours un résultat booléen (TrueouFalse).
Maintenant que vous savez comment poser des questions à vos données (par exemple, "est-ce que a est plus grand que b ?") et obtenir une réponse True ou False, nous allons voir comment utiliser ces réponses pour que votre programme prenne des décisions et exécute différentes actions. C'est l'objet de notre prochaine leçon sur les instructions conditionnelles if, elif et else.