Bases

Conditions en Python : guide débutant avec if elif else

Apprenez à utiliser if, elif et else en Python avec des exemples simples, des tests logiques et des bonnes pratiques pour débuter.

Conditions en Python : guide débutant avec if elif else

En Python, les conditions servent à faire prendre une décision à un programme. Au lieu d’exécuter toujours les mêmes lignes, le code peut réagir différemment selon une valeur, une comparaison ou le résultat d’un calcul. C’est une étape importante quand on débute, car elle permet de créer des programmes plus utiles, plus interactifs et plus proches de situations réelles.

Dans ce tutoriel, vous allez apprendre à utiliser if, elif et else avec des exemples simples. Nous verrons la structure de base, le rôle de l’indentation, les comparaisons, les opérateurs logiques et plusieurs cas pratiques. L’objectif est de comprendre clairement quand utiliser chaque mot-clé et comment éviter les erreurs fréquentes.

Prérequis

  • Savoir lancer un script Python ou utiliser un interpréteur interactif.
  • Connaître les variables simples comme des nombres et du texte.
  • Comprendre qu’une instruction Python s’écrit ligne par ligne avec une indentation significative.

Matériel nécessaire

  • Python 3 installé
  • Éditeur de texte ou IDE
  • Terminal ou console Python

Étapes

  1. Comprendre le rôle d’une condition

    Une condition permet de demander au programme : si telle situation est vraie, fais ceci. Sans condition, un script exécute simplement les instructions dans l’ordre. Avec une condition, il devient capable de choisir entre plusieurs chemins.

    Exemple simple :

    python
    age = 18
    
    if age >= 18:
        print("Vous êtes majeur.")

    Ici, Python vérifie si la variable age est supérieure ou égale à 18. Si c’est vrai, le message s’affiche. Si c’est faux, rien ne s’affiche dans cet exemple.

    Une condition produit donc un résultat de type booléen : True ou False. Python s’appuie sur ce résultat pour savoir s’il doit exécuter le bloc indenté sous if.

  2. Écrire une instruction if

    Gros plan réaliste sur un ordinateur portable avec des mains en train d’écrire une instruction if simple dans un éditeur de code Python.
    Photo réaliste d’un écran d’ordinateur portable affichant une structure Python avec if, elif et else pour plusieurs cas.

    La forme la plus simple d’une condition utilise if. Sa structure générale est la suivante :

    python
    if condition:
        instruction

    Plusieurs éléments sont importants :

    • Le mot-clé if commence le test.
    • La condition est une expression qui vaut True ou False.
    • Le caractère : termine la ligne du test.
    • Le bloc suivant doit être indenté.

    Exemple :

    python
    temperature = 25
    
    if temperature > 20:
        print("Il fait plutôt chaud.")

    Si temperature vaut 25, le test est vrai. Python exécute alors la ligne indentée. Si la valeur était 18, le test serait faux et la ligne ne serait pas exécutée.

    On peut aussi mettre plusieurs lignes dans le bloc :

    python
    solde = 150
    
    if solde > 0:
        print("Votre solde est positif.")
        print("Vous pouvez continuer.")

    Toutes les lignes alignées au même niveau d’indentation appartiennent au bloc du if.

  3. Comprendre l’indentation en Python

    En Python, l’indentation n’est pas seulement une question de présentation. Elle sert à délimiter les blocs de code. C’est donc un point essentiel quand on écrit des conditions.

    Exemple correct :

    python
    note = 14
    
    if note >= 10:
        print("Admis")

    Exemple incorrect :

    python
    note = 14
    
    if note >= 10:
    print("Admis")

    Dans le second cas, la ligne print n’est pas indentée. Python considère alors que le bloc attendu après if n’existe pas correctement.

    Il faut rester cohérent dans l’indentation. En pratique, on utilise souvent quatre espaces pour un niveau. L’important est de garder le même style dans tout le script.

    Exemple avec plusieurs blocs :

    python
    heure = 9
    
    if heure < 12:
        print("Bonjour")
        print("C'est le matin")
    
    print("Fin du programme")

    Les deux premières lignes indentées appartiennent au if. La dernière ligne, non indentée, est en dehors de la condition et s’exécute après celle-ci.

  4. Utiliser else pour le cas contraire

    Le mot-clé else permet de définir ce qu’il faut faire si la condition du if est fausse. C’est le bloc du cas contraire.

    Structure :

    python
    if condition:
        instruction_si_vrai
    else:
        instruction_si_faux

    Exemple :

    python
    age = 16
    
    if age >= 18:
        print("Vous êtes majeur.")
    else:
        print("Vous êtes mineur.")

    Si age vaut 16, le premier message ne s’affiche pas. Python passe au bloc else et affiche le second.

    Le principe important est le suivant : parmi les deux blocs, un seul sera exécuté. Si la condition du if est vraie, Python exécute ce bloc et ignore else. Si elle est fausse, il ignore le bloc du if et exécute else.

    Autre exemple :

    python
    mot_de_passe = "python123"
    
    if mot_de_passe == "python123":
        print("Accès autorisé")
    else:
        print("Accès refusé")

    Ici, on utilise == pour vérifier l’égalité entre deux valeurs. Nous reviendrons juste après sur les opérateurs de comparaison.

  5. Connaître les opérateurs de comparaison

    Vue réaliste d’une personne testant pas à pas des conditions Python sur un ordinateur portable.

    Les conditions utilisent très souvent des opérateurs de comparaison. Ils servent à comparer des valeurs et renvoient un booléen.

    • == : égal à
    • != : différent de
    • > : supérieur à
    • < : inférieur à
    • >= : supérieur ou égal à
    • <= : inférieur ou égal à

    Exemples :

    python
    x = 10
    print(x == 10)
    print(x != 5)
    print(x > 3)
    print(x < 20)

    Chaque ligne affiche True ou False.

    Dans une condition :

    python
    prix = 100
    
    if prix <= 100:
        print("Le produit est dans le budget.")

    Attention à ne pas confondre :

    • = pour affecter une valeur à une variable
    • == pour comparer deux valeurs

    Exemple d’affectation :

    python
    nom = "Lina"

    Exemple de comparaison :

    python
    if nom == "Lina":
        print("Bonjour Lina")

    Cette différence est fondamentale lorsqu’on débute.

  6. Ajouter plusieurs cas avec elif

    Quand deux chemins ne suffisent pas, on peut utiliser elif, qui signifie en pratique sinon si. Cela permet de tester plusieurs cas les uns après les autres.

    Structure :

    python
    if condition_1:
        instruction_1
    elif condition_2:
        instruction_2
    else:
        instruction_3

    Exemple avec une note :

    python
    note = 12
    
    if note >= 16:
        print("Très bien")
    elif note >= 12:
        print("Assez bien")
    else:
        print("À renforcer")

    Python lit les tests dans l’ordre :

    1. Il teste d’abord note >= 16.
    2. Si c’est faux, il teste note >= 12.
    3. Si ce second test est vrai, il exécute son bloc et s’arrête là.
    4. Sinon, il exécute le bloc else.

    Il peut y avoir plusieurs elif :

    python
    note = 8
    
    if note >= 16:
        print("Très bien")
    elif note >= 14:
        print("Bien")
    elif note >= 12:
        print("Assez bien")
    elif note >= 10:
        print("Passable")
    else:
        print("Insuffisant")

    Une seule branche sera exécutée : la première dont la condition est vraie. C’est pour cela que l’ordre des tests est important.

  7. Faire attention à l’ordre des conditions

    Avec elif, l’ordre des tests change le résultat. Python s’arrête dès qu’une condition vraie est trouvée. Il faut donc placer les cas du plus spécifique au plus général, ou du plus grand au plus petit selon le besoin.

    Exemple correct :

    python
    age = 15
    
    if age >= 18:
        print("Majeur")
    elif age >= 13:
        print("Adolescent")
    else:
        print("Enfant")

    Exemple problématique :

    python
    age = 15
    
    if age >= 13:
        print("Adolescent")
    elif age >= 18:
        print("Majeur")
    else:
        print("Enfant")

    Ici, pour age = 18, le premier test age >= 13 serait déjà vrai. Python afficherait donc Adolescent et n’irait jamais jusqu’au test age >= 18.

    Quand vous écrivez plusieurs conditions, relisez toujours leur ordre pour vérifier que chaque cas peut réellement être atteint.

  8. Utiliser les booléens dans les conditions

    Les conditions reposent sur les valeurs booléennes True et False. Certaines variables peuvent directement contenir ce type de valeur.

    python
    connecte = True
    
    if connecte:
        print("Bienvenue")
    else:
        print("Veuillez vous connecter")

    Ici, il n’est pas nécessaire d’écrire if connecte == True. La forme if connecte: est suffisante et plus lisible.

    Autre exemple :

    python
    termine = False
    
    if termine:
        print("Le téléchargement est fini")
    else:
        print("Téléchargement en cours")

    On peut aussi inverser un booléen avec not :

    python
    connecte = False
    
    if not connecte:
        print("Accès non autorisé")

    Le mot-clé not inverse le résultat logique : True devient False, et False devient True.

  9. Combiner plusieurs conditions avec and, or et not

    Il est fréquent de vouloir tester plusieurs éléments en même temps. Python permet cela avec les opérateurs logiques and, or et not.

    Le mot-clé and

    and signifie que toutes les conditions reliées doivent être vraies.

    python
    age = 20
    carte = True
    
    if age >= 18 and carte:
        print("Entrée autorisée")

    Le message s’affiche seulement si la personne a au moins 18 ans et possède sa carte.

    Le mot-clé or

    or signifie qu’au moins une des conditions doit être vraie.

    python
    jour = "samedi"
    
    if jour == "samedi" or jour == "dimanche":
        print("C'est le week-end")

    Si l’une des deux comparaisons est vraie, le bloc s’exécute.

    Le mot-clé not

    not inverse une condition.

    python
    pluie = False
    
    if not pluie:
        print("On peut sortir")

    Exemple plus complet :

    python
    age = 17
    accompagne = True
    
    if age >= 18 or accompagne:
        print("Entrée possible")
    else:
        print("Entrée refusée")

    Avec ce type de condition, prenez l’habitude de lire la phrase à voix haute. Cela aide à vérifier si la logique du test correspond bien à l’intention.

  10. Écrire des conditions avec input

    Les conditions deviennent particulièrement utiles quand on récupère une saisie utilisateur avec input(). Le programme peut alors adapter sa réponse.

    Exemple avec une réponse textuelle :

    python
    reponse = input("Aimez-vous Python ? ")
    
    if reponse == "oui":
        print("Super !")
    else:
        print("Vous changerez peut-être d'avis en pratiquant.")

    Il faut garder en tête que input() renvoie du texte. Si vous attendez un nombre, il faut le convertir avant de comparer numériquement.

    Exemple :

    python
    age = int(input("Quel âge avez-vous ? "))
    
    if age >= 18:
        print("Vous pouvez continuer.")
    else:
        print("Accès limité.")

    Ici, int() convertit la saisie en entier. Sans cette conversion, la variable contiendrait une chaîne de caractères.

    On peut aussi combiner cela avec elif :

    python
    note = int(input("Entrez votre note : "))
    
    if note >= 16:
        print("Très bien")
    elif note >= 10:
        print("Admis")
    else:
        print("Ajourné")

    Ce type d’exercice est très formateur pour débuter, car il relie variables, types et conditions.

  11. Imbriquer des conditions

    Il est possible de placer une condition à l’intérieur d’une autre. On parle alors de conditions imbriquées. Cela peut être utile lorsque plusieurs décisions dépendent les unes des autres.

    Exemple :

    python
    age = 20
    abonne = True
    
    if age >= 18:
        if abonne:
            print("Tarif abonné adulte")
        else:
            print("Tarif adulte standard")
    else:
        print("Tarif mineur")

    Python commence par tester l’âge. Si la personne est majeure, un second test vérifie si elle est abonnée.

    Cette technique fonctionne bien, mais il faut rester prudent. Trop d’imbrications rendent le code plus difficile à lire. Quand c’est possible, une combinaison logique avec and ou or peut parfois rendre le code plus simple.

    Par exemple, ce code est plus direct :

    python
    age = 20
    abonne = True
    
    if age >= 18 and abonne:
        print("Tarif abonné adulte")
    elif age >= 18:
        print("Tarif adulte standard")
    else:
        print("Tarif mineur")

    Le résultat logique peut être plus facile à suivre selon le contexte.

  12. Exemples pratiques pour bien retenir

    Voici plusieurs exemples courts pour consolider les bases.

    Exemple 1 : nombre positif, négatif ou nul

    python
    nombre = -3
    
    if nombre > 0:
        print("Le nombre est positif")
    elif nombre < 0:
        print("Le nombre est négatif")
    else:
        print("Le nombre est nul")

    Exemple 2 : accès à une réduction

    python
    montant = 120
    
    if montant >= 100:
        print("Réduction appliquée")
    else:
        print("Pas de réduction")

    Exemple 3 : identification simple

    python
    utilisateur = "admin"
    
    if utilisateur == "admin":
        print("Bonjour administrateur")
    else:
        print("Bonjour utilisateur")

    Exemple 4 : test sur le jour

    python
    jour = "lundi"
    
    if jour == "samedi" or jour == "dimanche":
        print("Repos")
    else:
        print("Travail ou étude")

    Exemple 5 : vérifier une plage de valeurs

    python
    age = 25
    
    if age >= 18 and age <= 30:
        print("Vous êtes dans la tranche 18-30")
    else:
        print("Vous êtes hors de cette tranche")

    Ces exemples montrent que les conditions sont partout : validation, catégorisation, affichage de messages, gestion de droits ou adaptation d’un comportement.

  13. Lire et tester ses conditions pas à pas

    Quand une condition ne se comporte pas comme prévu, il est utile de la lire étape par étape. Voici une méthode simple :

    1. Vérifiez la valeur réelle des variables.
    2. Relisez chaque opérateur de comparaison.
    3. Regardez l’ordre des if et elif.
    4. Contrôlez l’indentation.
    5. Testez avec plusieurs valeurs différentes.

    Exemple :

    python
    age = 17
    
    if age >= 18:
        print("Majeur")
    else:
        print("Mineur")

    Pour comprendre ce qui se passe, on peut raisonner ainsi :

    • age vaut 17
    • Le test 17 >= 18 vaut False
    • Le bloc if est ignoré
    • Le bloc else s’exécute

    On peut aussi afficher temporairement des valeurs pour déboguer :

    python
    age = 17
    print(age)
    print(age >= 18)
    
    if age >= 18:
        print("Majeur")
    else:
        print("Mineur")

    Cette habitude aide beaucoup au début pour comprendre la logique réelle du programme.

  14. Bonnes pratiques pour débuter proprement

    Voici quelques conseils simples pour écrire de meilleures conditions en Python :

    • Choisissez des noms de variables clairs : age, note, connecte sont plus parlants que x ou a.
    • Gardez les conditions lisibles : si une ligne devient trop compliquée, simplifiez-la ou découpez le problème.
    • Évitez les tests inutiles : préférez if connecte: à if connecte == True:.
    • Soignez l’ordre des cas : surtout quand vous utilisez plusieurs elif.
    • Testez des cas variés : valeurs limites, cas vrais, cas faux, cas intermédiaires.

    Exemple plus lisible :

    python
    age = 22
    est_abonne = True
    
    if age >= 18 and est_abonne:
        print("Accès premium")
    else:
        print("Accès standard")

    Le but n’est pas seulement que le code fonctionne, mais aussi qu’il reste facile à relire et à corriger.

Erreurs fréquentes & dépannage

  • Oublier les deux-points après if, elif ou else.
  • Mal indenter le bloc qui suit une condition.
  • Confondre = et == : le premier affecte, le second compare.
  • Placer les tests dans le mauvais ordre, surtout avec plusieurs elif.
  • Comparer directement un nombre saisi avec input() sans conversion avec int() lorsque l’on attend un entier.
  • Créer des conditions trop complexes dès le début, au lieu de les simplifier.

Astuces & pour aller plus loin

  • Commencez par écrire une condition simple avec if seul, puis ajoutez else et elif si nécessaire.
  • Testez vos scripts avec plusieurs valeurs pour vérifier tous les chemins possibles.
  • Lisez vos conditions comme une phrase en français pour valider leur logique.
  • Utilisez des booléens explicites comme est_connecte ou est_admin pour rendre le code plus clair.
  • Si une condition devient difficile à comprendre, séparez-la en plusieurs tests plus simples.

Questions fréquentes

Quelle est la différence entre if et elif ?

Le mot-clé if démarre le premier test. Le mot-clé elif ajoute un autre test qui sera vérifié seulement si les tests précédents sont faux.

Est-ce que else est obligatoire ?

Non. Vous pouvez écrire une condition avec seulement if. Le bloc else est utile quand vous voulez définir explicitement le cas contraire.

Peut-on mettre plusieurs elif ?

Oui. Vous pouvez en chaîner autant que nécessaire. Python exécutera uniquement la première branche dont la condition est vraie.

Pourquoi l’indentation est-elle importante en Python ?

Parce qu’elle délimite les blocs de code. Après un if, un elif ou un else, les lignes indentées appartiennent au bloc correspondant.

Pourquoi input() pose parfois problème dans une condition ?

Parce que input() renvoie du texte. Si vous voulez comparer une saisie comme un nombre, vous devez d’abord la convertir, par exemple avec int().

Conclusion

Les conditions font partie des bases indispensables en Python. Avec if, vous testez un cas. Avec elif, vous ajoutez des cas supplémentaires. Avec else, vous gérez ce qu’il faut faire quand aucun test précédent n’est vrai. En maîtrisant aussi l’indentation, les comparaisons et les opérateurs logiques, vous pouvez déjà écrire des programmes capables de prendre des décisions simples mais très utiles.

Pour progresser, le plus efficace est de pratiquer : testez différentes valeurs, modifiez les exemples du tutoriel et essayez de créer vos propres mini-programmes, comme un vérificateur d’âge, un système de note ou un menu simple. C’est en répétant ces structures que leur logique devient naturelle.

Commentaires· Aucun commentaire pour l'instant

Soyez le premier à réagir.

Laisser un commentaire