La déclaration if en Python est une déclaration conditionnelle qui exécute un bloc de code uniquement lorsqu'une condition spécifique est remplie. Elle évalue une expression booléenne qui renvoie True ou False, et exécute le bloc de code indenté lorsque la condition est True. Les déclarations if de Python permettent la prise de décision dans vos programmes, permettant différents chemins de code basés sur des conditions variables.
Syntaxe de Base de la Déclaration if
La syntaxe d'une déclaration if en Python est simple :
if condition:
# code to execute if condition is True
statement La condition est une expression booléenne (comme number > 5 ou name == "Alice") qui s'évalue à True ou False. Si la condition s'évalue à True, le bloc de code indenté s'exécute ; si False, Python ignore complètement le bloc.
Exemple 1 : Déclaration if Simple
number = 10
if number > 0:
print("The number is positive") The number is positive
Exemple 2 : Déclaration if avec Condition False
number = -5
if number > 0:
print("The number is positive")
print("This line always executes") This line always executes
Dans le deuxième exemple, puisque -5 n'est pas supérieur à 0, la déclaration print à l'intérieur du bloc if est ignorée.
Indentation dans les Déclarations if
Python s'appuie sur l'indentation (espaces en début de ligne) pour définir la portée des blocs de code, contrairement à d'autres langages qui utilisent des accolades. Toutes les déclarations à l'intérieur d'un bloc if doivent être indentées de la même quantité, généralement 4 espaces.
Indentation Correcte :
age = 20
if age >= 18:
print("You are an adult")
print("You can vote")
print("You have full legal rights") Indentation Incorrecte (causera une erreur) :
age = 20
if age >= 18:
print("You are an adult") # IndentationError Si vous n'utilisez pas d'indentation correcte, Python lèvera une IndentationError car il ne peut pas déterminer quelles déclarations appartiennent au bloc if.
Opérateurs de Comparaison avec les Déclarations if
Python prend en charge les opérateurs de comparaison standard qui renvoient des valeurs booléennes à utiliser dans les déclarations if :
==- Égal à!=- Différent de<- Inférieur à<=- Inférieur ou égal à>- Supérieur à>=- Supérieur ou égal à
Exemple : Utilisation de Différents Opérateurs de Comparaison
a = 33
b = 200
if b > a:
print("b is greater than a")
if a != b:
print("a and b are not equal")
if a <= 50:
print("a is 50 or less") b is greater than a a and b are not equal a is 50 or less
Déclarations Multiples dans le Bloc if
Vous pouvez inclure plusieurs déclarations dans un bloc if tant qu'elles ont toutes le même niveau d'indentation.
Exemple :
score = 95
if score >= 90:
print("Excellent work!")
print("You earned an A grade")
grade = "A"
print(f"Your grade is: {grade}") Excellent work! You earned an A grade Your grade is: A
Variables Booléennes dans les Déclarations if
Les variables booléennes peuvent être utilisées directement dans les déclarations if sans opérateurs de comparaison.
Exemple :
is_logged_in = True
if is_logged_in:
print("Welcome back!")
is_raining = False
if is_raining:
print("Take an umbrella")
else:
print("Enjoy the sunshine") Welcome back! Enjoy the sunshine
Python traite certaines valeurs comme False dans un contexte booléen : 0, chaînes vides "", None, et collections vides comme [] ou {}. Toutes les autres valeurs sont traitées comme True.
Valeurs Truthy et Falsy
Python peut évaluer de nombreux types de valeurs comme True ou False dans les déclarations conditionnelles :
Valeurs Falsy (évaluées comme False) :
0(zéro)""(chaîne vide)None[](liste vide)(dictionnaire vide)()(tuple vide)
Valeurs Truthy (évaluées comme True) :
- Tout nombre non nul (positif ou négatif)
- Toute chaîne non vide
- Collections non vides
Exemple :
name = ""
if name:
print(f"Hello, {name}")
else:
print("Name is empty")
items = [1, 2, 3]
if items:
print("List has items") Name is empty List has items
Déclaration if sur Une Ligne
Pour des conditions simples, vous pouvez écrire une déclaration if sur une seule ligne :
Format Standard :
temperature = 30
if temperature > 25:
print("It's hot outside") Format Compact :
temperature = 30
if temperature > 25: print("It's hot outside") Les deux versions produisent la même sortie, mais le format sur une ligne est plus concis pour les déclarations simples.
Cas d'Usage Courants
Cas d'Usage 1 : Valider l'Entrée Utilisateur
age = int(input("Enter your age: "))
if age >= 18:
print("You are eligible to vote") Cas d'Usage 2 : Vérifier les Nombres Pairs ou Impairs
number = 7
if number % 2 == 0:
print(f"{number} is even") Cas d'Usage 3 : Validation de Mot de Passe
password = "secret123"
if len(password) >= 8:
print("Password is strong enough") Cas d'Usage 4 : Vérifier le Contenu d'une Liste
shopping_cart = ["apple", "banana", "milk"]
if "milk" in shopping_cart:
print("Milk is in your cart") Erreurs Courantes à Éviter
Erreur 1 : Oublier les Deux Points
# Wrong
if number > 0
print("Positive")
# Correct
if number > 0:
print("Positive") Erreur 2 : Utiliser = Au Lieu de ==
x = 5
# Wrong (assignment, not comparison)
if x = 5:
print("x is 5")
# Correct
if x == 5:
print("x is 5") Erreur 3 : Indentation Incohérente
# Wrong
if True:
print("Line 1")
print("Line 2") # Different indentation level
# Correct
if True:
print("Line 1")
print("Line 2") Exemples de Pratique
Exemple 1 : Vérificateur de Température
temperature = 22
if temperature > 30:
print("It's very hot")
if temperature > 20:
print("It's warm")
if temperature < 10:
print("It's cold") It's warm
Exemple 2 : Attribution de Notes
marks = 85
if marks >= 90:
print("Grade: A")
if marks >= 80 and marks < 90:
print("Grade: B")
if marks >= 70 and marks < 80:
print("Grade: C") Grade: B
Exemple 3 : Vérification d'Appartenance
username = "admin"
if username == "admin":
print("Access granted to admin panel")
print("Loading admin dashboard...") Access granted to admin panel Loading admin dashboard...
Essayez Vous-Même
Pratiquez ce que vous avez appris en modifiant le code ci-dessous. Essayez de changer les valeurs et conditions pour voir différentes sorties !
// Cliquez sur "Exécuter le Code" pour voir les résultats
Sujets Connexes
Questions Fréquemment Posées
Quelle est la différence entre if et if else en Python ?
Une déclaration if n'exécute du code que lorsque la condition est True. Une déclaration if else fournit un bloc de code alternatif qui s'exécute lorsque la condition est False.
Dois-je utiliser des parenthèses autour de la condition dans les déclarations if Python ?
Non, les parenthèses sont optionnelles en Python. if (x > 5): et if x > 5: sont tous deux valides, mais le dernier est plus pythonique.
Puis-je utiliser plusieurs conditions dans une seule déclaration if ?
Oui, vous pouvez utiliser des opérateurs logiques comme and, or et not pour combiner plusieurs conditions : if age >= 18 and has_license:.
Que se passe-t-il si je n'indente pas le code après une déclaration if ?
Python lèvera une IndentationError car il nécessite une indentation pour définir les blocs de code.