If - Else imbriqués
Fait partie de la section Fondamentaux du Journey Python de Coddy. Leçon 23 sur 77.
Les instructions if-else imbriquées vous permettent de vérifier plusieurs conditions en plaçant une instruction if-else à l’intérieur d’une autre. Vous pouvez imbriquer un bloc if dans un bloc else. C’est un motif courant et valide en Python.
Crée une instruction if-else de base :
age = 18
title = ""
if age >= 18:
title = "Adult"
else:
title = "Minor"Ajoutons maintenant une condition imbriquée dans le bloc else :
age = 18
title = ""
allowed_to_drink = False
if age >= 18:
title = "Adult"
else:
title = "Minor"
if age >= 13:
title = "Teenager"
else:
title = "Child"Tu peux également imbriquer une condition dans le bloc if :
age = 25
title = ""
allowed_to_drink = False
if age >= 18:
title = "Adult"
if age >= 21:
allowed_to_drink = True
else:
allowed_to_drink = False
else:
title = "Minor"Dans les deux exemples, le if-else interne ne s’exécute que lorsque le bloc qui le contient s’exécute : celui du bloc else s’exécute lorsque age >= 18 est faux, et celui du bloc if s’exécute lorsque age >= 18 est vrai. Placer une instruction if à l’intérieur d’un bloc else (ou d’un bloc if) est tout à fait valide. C’est précisément ce qui la rend « imbriquée ».
Défi
DébutantÉcrivez un programme qui détermine si une personne peut voir un film en fonction de son âge et de la présence d’un parent.
Remarque : age et with_parent sont déjà définis pour vous, avec des valeurs différentes dans chaque cas de test. Ne les définissez pas vous-même, utilisez-les simplement.
Votre tâche :
Utilisez des instructions if-else imbriquées pour définir la variable message sur l’une des chaînes suivantes :
- Si l’âge est de 18 ans ou plus, définissez
messagesur"You can watch any movie". - Si l’âge est inférieur à 18 ans :
- Si
with_parentvautTrue, définissezmessagesur"You can watch PG-13 movies". - Si
with_parentvautFalse, définissezmessagesur"You can only watch G-rated movies".
- Si
Important : Comme with_parent est déjà un booléen, vérifiez-le directement (par exemple, if with_parent:) : ne le comparez pas à une chaîne comme "true" ou "True".
Important : Les chaînes doivent correspondre exactement, y compris la casse et la ponctuation. Par exemple, utilisez "PG-13 movies" (« movies » avec un « m » minuscule), et non "PG-13 Movies".
Essayez vous-même
# Écrivez votre code if-else imbriqué ici
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Opérateurs, partie 2
Opérateurs logiques, partie 1Opérateurs logiques, partie 2Récapitulatif - Logique simpleOpérateurs logiques, partie 3Opérateurs logiques, partie 47Calculateur de partage d'addition
Message de bienvenueSaisie des données10FizzBuzz avec une variante
Présentation du jeuLa fonction FizzBuzz2Variables
NombresChaînes de caractèresBooléensConventions de nommageVariables videsRécapitulatif - Initialiser des variables8Boucles
Boucle ForBoucle WhileBreakContinueRécapitulatif - FactorielleLa fonction RangeBoucles imbriquéesRécapitulatif - Saisie dynamique3Les opérateurs, partie 1
Opérateurs arithmétiquesOpérateur moduloRaccourcis arithmétiquesRécapitulatif - Calculs simplesOpérateurs de comparaison6E/S de base
SortieSortie avec des variablesEntréeCastRécapitulatif - Jusqu'à 120Récapitulatif - Vrai ou Faux9Fonctions
Déclarer une fonctionArgumentsRetourner une valeurRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validationValeurs par défautEntraînez-vous par vous-même : Compilateur Python en ligne