Maîtriser les instructions conditionnelles Python : IF, ELSE, ELIF et logique de type Switch
Que sont les instructions conditionnelles en Python ?
Les instructions conditionnelles permettent à un programme d'exécuter différents blocs de code basés sur des expressions booléennes. En Python, l'instruction if est la construction centrale qui pilote ce processus de prise de décision.
Dans ce guide, nous explorerons comment utiliser if, else, elif et l'alternative switch-case basée sur les dictionnaires de Python. Chaque section inclut des exemples concis pour illustrer les concepts.
- Comprendre l'instruction
if - Quand une condition
iféchoue - Utiliser la clause
else - Pièges courants avec
else - Employer
elifpour branches multiples - Condenser la logique avec expressions ternaires
- Instructions
ifimbriquées - Implémenter un motif switch-case avec dictionnaires
Bases de l'instruction if en Python
Syntaxe
if expression:
# bloc exécuté quand expression est True
else:
# bloc exécuté quand expression est False
Exemple :
def main():
x, y = 2, 8
if x < y:
st = "x est inférieur à y"
else:
st = "x n'est pas inférieur à y"
print(st)
if __name__ == "__main__":
main()
Que se passe-t-il quand la condition if est fausse ?
Si la condition évalue à False et qu'aucune clause else n'est fournie, le corps du if est ignoré et le programme continue après le bloc.
Exemple avec condition échouée :
def main():
x, y = 8, 4
if x < y:
st = "x est inférieur à y"
else:
st = "x est supérieur ou égal à y"
print(st)
if __name__ == "__main__":
main()
Utiliser la clause else
Le bloc else s'exécute quand la condition if précédente est False. Utile pour une décision binaire.
def main():
x, y = 8, 4
if x < y:
st = "x est inférieur à y"
else:
st = "x est supérieur à y"
print(st)
if __name__ == "__main__":
main()
Erreurs courantes avec else
Quand deux valeurs sont égales, un bloc else peut signaler incorrectement une comparaison comme « supérieur » ou « inférieur ».
def main():
x, y = 8, 8
if x < y:
st = "x est inférieur à y"
else:
st = "x est supérieur à y" # Incorrect quand x == y
print(st)
if __name__ == "__main__":
main()
Introduction de elif pour branches multiples
La clause elif permet de tester des conditions additionnelles après le if initial. Elle empêche l'erreur de passage vue ci-dessus.
def main():
x, y = 8, 8
if x < y:
st = "x est inférieur à y"
elif x == y:
st = "x est égal à y"
else:
st = "x est supérieur à y"
print(st)
if __name__ == "__main__":
main()
Condenser la logique avec une expression ternaire
La syntaxe one-liner de Python peut rendre les comparaisons simples concises :
def main():
x, y = 10, 8
st = "x est inférieur à y" if x < y else "x est supérieur ou égal à y"
print(st)
if __name__ == "__main__":
main()
Instructions if imbriquées
Les conditions imbriquées sont utiles quand une décision dépend de plusieurs variables.
total = 100
pays = "AU" # Changez à "US" pour tester l'autre bloc
if pays == "US":
if total <= 50:
print("Frais de port : $50")
elif total <= 100:
print("Frais de port : $25")
elif total <= 150:
print("Frais de port : $5")
else:
print("GRATUIT")
elif pays == "AU":
if total <= 50:
print("Frais de port : $100")
else:
print("GRATUIT")
Équivalent Switch-Case en Python
Python n'a pas d'instruction switch native, mais une recherche dans un dictionnaire offre la même clarté et efficacité.
def exemple_switch(argument):
switcher = {
0: "Ceci est le Cas Zéro",
1: "Ceci est le Cas Un",
2: "Ceci est le Cas Deux",
}
return switcher.get(argument, "rien")
if __name__ == "__main__":
argument = 1
print(exemple_switch(argument))
Résumé
- if – Exécute quand une condition est vraie.
- else – Exécute quand le
ifprécédent est faux. - elif – Ajoute des vérifications booléennes additionnelles en séquence.
- Expressions ternaires (one-liner) raccourcissent les comparaisons simples.
- Blocs
ifimbriqués gèrent les décisions multidimensionnelles. - Recherches dans dictionnaires fournissent une alternative switch-case propre.
Python
- Maîtriser la logique conditionnelle en C# : If, If-Else, If-ElseIf et instructions If imbriquées
- Maîtriser l'instruction Switch C# : Syntaxe, exemples et bonnes pratiques
- Maîtriser l'instruction switch-case C++ : Syntaxe, flux et exemples pratiques
- Maîtriser les instructions conditionnelles en C : If, Else et plus
- Maîtriser l'instruction switch en C : Syntaxe, flux et exemple pratique
- Instructions, indentation et commentaires en Python : Guide clair
- Maîtriser l'instruction pass en Python : Guide pratique
- Maîtriser le switch-case en C++ : Syntaxe, utilisation et exemples pratiques
- Fonction Python print() : Guide pratique avec exemples