Python : comment créer des structures conditionnelles?

Table des matières

Introduction

1. Les Structures conditionnelles

1.1. Le petit if

1.2.  If avec else

1.2.1. L’ASCENCEUR

1.3. La notion d’indentation en Python

1.4. If, elif, else

1.4.1. Si ce n’est pas blanc c’est noir ! Si ce n’est pas positif ou nul c’est négatif !

Conclusion:

Introduction :

Bonjour ! Nous voilà de retour pour une nouvelle aventure dans le monde de la programmation Python ! Aujourd’hui, nous allons nous intéresser à l’une des structures de contrôle les plus utilisées dans les langages de programmation. En effet, il existe deux types de structures très populaires, la structure conditionnelle qui permet d’exécuter des instructions si une condition est vérifiée et la structure de contrôle de boucle qui exécute un bloc d’instructions tant qu’une condition est vérifiée.

Dans ce tutoriel, nous allons découvrir les différentes structures conditionnelles. Cette notion est l’une des plus importantes en programmation, l’idée est de tester si une condition ou un ensemble de conditions sont  vraies ou fausses.

Vous devez bien sûr, avoir des prérequis des opérateurs logiques  afin de pouvoir programmer ces conditions en toute aisance. Pour cela, nous vous conseillons fortement de voir le tutoriel : Tutoriel Python : Comment programmer les opérateurs logiques avec Python ?

Bon ! nous pensons que vous êtes prêts pour attaquer ce tutoriel ! Que l’aventure commence ! 

1. Les Structures conditionnelles :

Les structures conditionnelles permettent  de vérifier si une condition est vraie ou fausse afin d’exécuter le bloc de code correspondant. Elles sont généralement utilisées avec les variables, par exemple un programme peut tester si une variable est égal à une valeur puis exécuter une instruction si la condition est vérifiée. Python propose trois structures conditionnelles que nous allons voir tout au long de ce tutoriel, à savoir :

  • la condition if
  • la condition if…else
  • la condition if…Elif….else 

Nous allons étudier chacune en détail avec des exemples pour mieux comprendre !

1.1. Le petit if :

C’est la plus simple des structures conditionnelles mais la base de toutes !  elle permet de tester si une condition est vraie :

Par exemple, supposons un programme qui, selon la somme d’argent que vous avez dans votre porte-monnaie, vous annonce que vous pouvez ou non acheter un certain  livre. Les étapes à suivre sont les suivantes :

  • Déclarer les deux variables :

o Par exemple : Portemonnaie = 100  et le prix_livre = 101

  • Écrire notre structure conditionnelle à l’aide du  if :

Pour cela, vous devez tout d’abord connaître la structure générale du if  en Python :

Pour vous faciliter la tâche et vous aider à vous habituer à coder en Python, nous vous proposons d’écrire vos propres scripts en vous inspirant du pseudocode suivant, puis de le comparer avec celui que nous allons vous fournir. Nous adopterons cette méthode pour toutes les notions de ce tutoriel.

Donc, comme annoncé préalablement, on commence par déclarer les deux variables. Ensuite, on annonce notre structure conditionnelle, ici la condition qui doit être vérifiée est que la somme du porte_monnaie dépasse le prix du livre.

Porte_monnaie=100
 Prix_livre=101 
Si Porte_monnaie >= Prix_livre alors :
  Afficher ('Vous pouvez acheter ce livre')

Nous estimons que votre code a fonctionné avec succès ! Par ailleurs, voici la syntaxe Python que nous proposons pour ce problème :

porte_monnaie= 100
prix_livre=101
#Début de la structure conditionnelle if
if porte_monnaie>=prix_livre:
   print ("Vous avez assez d'argent pour acheter ce livre !")
porte_monnaie= 102
prix_livre=101
#Début de la structure conditionnelle if
if porte_monnaie>=prix_livre:
   print ("Vous avez assez d'argent pour acheter ce livre !")

Nous allons donc  détailler le code que nous venons de vous fournir :

  • D’abord, on déclare les deux premières variables porte_monnaieet prix_livre et on leur donne respectivement les valeurs 100 et 101.
  • Le #en Python permet d’écrire un commentaire. Apprenez à inclure des commentaires dans votre code ça facilite la lecture et la compréhension de ce dernier.

Ensuite, on déclare notre structure if qui teste  si la valeur de porte_monnaie est supérieure ou égal à la variable prix_livre et qui affiche (« vous avez assez d’argent ») si la condition est vérifiée ou (« vous n’avez pas assez d’argent ») dans le cas contraire.

Voici le résultat d’exécution de ce code :

Le premier cas n’affiche rien car la somme du porte_monnaie n’est pas suffisante et donc la condition n’est pas vérifiée. Par contre, dans le deuxième bout de code, l’interpréteur affiche le message (‘Vous avez assez d’argent pour acheter ce livre !’) car effectivement la condition est vérifiée dans ce cas.

1.2. If avec else :

Jusqu’à présent, on ne sait coder que si une condition est vraie alors le programme exécute certaines instructions avec le if . Mais vous vous posez sûrement la question suivante : Si la condition n’est pas vérifiée, peut-on exécuter du code aussi ?

La réponse est un grand OUI, d’ailleurs c’est ce que nous allons découvrir dans cette section :

La structure if…else (si…sinon) est plus complète  que celle d’avant car elle permet même dans le cas où la condition n’est pas vérifiée d’exécuter d’autres instructions :

Syntaxe général du if….else en Python :

L’exemple suivant explique en détail comment fonctionne le if…..else :

1.2.1. L’ASCENCEUR :

Un ascenseur permet de transporter les gens entre les étages, par contre le poids total des personnes ne doit pas dépasser une certaine limite ! Nous allons écrire un programme qui réalise la condition suivante :

  • Si le poids total des personnes est inférieur ou égal à 600 KGl’ascenseur affiche (‘Départ immédiat ’) sinon il affiche (‘Attention ! le poids maximal est dépassé ! ’).

Notez que vous devez avoir 5 poids de 5 personnes différentes en tant que variables puis faire la somme total des poids.

Pas besoin de vous rappeler que la première étape est de déclarer les variables !

On commence donc par le pseudo code avant de passer à la syntaxe python et son exécution !

Poids_personne1= 67
Poids_personne2=81
Poids_personne3=55
Poids_personne4=52
Poids_personne5=63
\On commence par déclarer la variable somme_des_poids
Somme_des_poids=Poids_personne1+Poids_personne2+Poid_personne3+Poids_personne4+Poids_personne5
Si somme_des_poids   Afficher («Départ immédiat 
Sinon :
 Afficher («Attention ! le poids maximal est dépassé ! »)

Nous supposons que vous savez ce qu’il vous reste à faire avant de passer à la page suivante ! À vos claviers mes programmeurs !

Le code en Python :

Ce premier code teste la première condition où la somme des poids ne dépasse pas 600KG.

#On déclare les variables des poids
poids_personne1=67
poids_personne2=81
poids_personne3=55
poids_personne4=52
poids_personne5=63
#variable qui somme tous les poids
somme_des_poids=poids_personne1+poids_personne2+poids_personne3+poids_personne4+poids_personne5
#Structure conditionnelle if...else:

Quant au deuxième il vérifie la deuxième condition :

#On déclare les variables des poids
poids_personne1=167
poids_personne2=121
poids_personne3=155
poids_personne4=92
poids_personne5=99
#variable qui somme tous les poids
somme_des_poids=poids_personne1+poids_personne2+poids_personne3+poids_personne4+poids_personne5
#Structure conditionnelle if...else:
if somme_des_poids  print("Départ immédiat")
else:
   print("Attention! le poids maximal est dépassé")
if somme_des_poids  print("Départ immédiat")
else:
   print ("Attention! le poids maximal est dépassé")

1.3. La notion d’indentation en Python :

L’indentation signifie ajouter des tabulations ou des espaces dans un code. En python, c’est une notion très importante dans l’écriture du code. D’abord, elle permet de bien structurer et visualiser son code, ensuite, pour ne pas vous mentir vous êtes obligés de l’apprendre J . Python ne comprend pas un code mal indenté. Nous allons vous expliquer tout cela avec des exemples concrets :

  • Si on prend ce premier exemple dans lequel le programme teste simplement si un nombre est positif, on utilisera uniquement la structure conditionnelle if :

Syntaxe en Python :

nombre=5
if nombre>0 :
   print ("le nombre positif !")

Résultat de l’exécution:

Vous allez sûrement vous poser la question suivante : « l’indentation dans tout ça ?! »  Nous vous invitons à retaper le même code mais exactement comme le montre cette capture ne laissez ni espace ni rien du tout :

Vous obtenez directement une erreur dans l’exécution de type IndentationError avec le message ‘expected an indented block ’ qui signifie que le programme s’attendait à une indentation après le if.

De la même manière, si  nous écrivons le code sous la forme suivante nous obtiendrons une autre erreur :

Ici l’interpréteur affiche qu’il y a une indentation inattendue !

Alors, Pour ne pas tomber dans ces problèmes, nous allons vous donner quelques règles essentielles lors de l’écriture d’un code en Python :

  • Nous commençons toujours l’écriture d’un code à gauche sans aucun espace, les indentations se font si nous avons une structure conditionnelle ou autre. Par exemple, à chaque fois que l’on écrit une condition, son bloc d’exécution doit commencer à partir du mot if et pas avant :

  Bonne syntaxe !

  Mauvaise syntaxe !

Donc, le conseil que nous pouvons vous donner est de faire très attention à l’indentation pour éviter d’avoir des erreurs lors de l’exécution.

1.4. If, elif, else  :

Cette dernière structure qui est la plus complète des trois, permet d’ajouter autant que l’on souhaite de conditions précises grâce au mot elif. Le principe est que selon le nombre de conditions souhaitées, vous ajoutez les elif correspondantes entre  l’if de départ et l’else de fin. Le schéma suivant explique le fonctionnement de cette structure :

Voici la syntaxe générale en Python :

Vous allez mieux comprendre le fonctionnement de cette structure grâce aux  exemples suivant :

1.4.1. Si ce n’est pas blanc c’est noir ! Si ce n’est pas positif ou nul c’est négatif !

On voudrons écrire un programme qui, teste si un nombre est positif, négatif ou bien nul. La première étape comme d’habitude est d’écrire l’algorithme de cet exemple en pseudo code. Nous vous invitons à essayer de formuler votre propre pseudocode pour mieux apprendre et ensuite voir la solution. Puis nous allons le programmer en Python :

Voici le pseudo code de la solution de l’exemple :

nombre= 10  (le nombre peut être de votre choix, ici j’ai choisi 10)
Si nombre=0 :
 Afficher (« votre nombre  est nul» 
Sinon Si nombre>0 :
  Afficher (« votre nombre est positif » 
Sinon :
 Afficher (« votre nombre  est négatif »)

Il est clair que la première des choses et de déclarer la variable nombre. Ensuite, nous mettons en place notre structure conditionnelle, si le nombre est nul l’interpréteur affiche « votre nombre est nul » puis il sort de la structure sans tester les autres conditions car la première est réalisée.

Sinon, il passe à la deuxième condition et il la teste, si elle est vérifiée alors il passe à son bloc d’instructions et l’exécute puis sors de la structure sans tester la dernière.

Finalement , si le programme n’a pas beaucoup de chance et que l’utilisateur adore les nombres négatifs , il est obligé de passer par la première et deuxième condition qui ne sont pas réalisées et donc afficher le dernier texte car c’est la seule option qui reste donc pas besoin de tester ! Si un nombre n’est pas nul ou positif il est clairement négatif.

Syntaxe du code en Python :

  • Code 1

nombre=10
if nombre==0:
  print("le nombre est nul !")
elif nombre>0:
  print ("le nombre est positif!")
else :
  print ("le nombre est négatif")

  • Code 2 :

nombre=-1
if nombre==0:
  print("le nombre est nul !")
elif nombre>0:
  print("le nombre est positif!")
else :
  print("le nombre est négatif")

  • Code 3 :

nombre=0
if nombre==0:
  print("le nombre est nul !")
elif nombre>0:
  print("le nombre est positif!")
else :
  print("le nombre est négatif")

La différence entre les trois codes est que le premier teste un nombre positif, le deuxième un nombre négatif et le dernier un nombre nul.

Exécution du code Python :

  • Résultat de l’exécution du code 1 :
  • Résultat de l’exécution du code 2 :
  • Résultat de l’exécution du code 3 :

Conclusion :

Nous sommes arrivés à la fin de ce tutoriel, nous pensons que maintenant vous avez les notions de base pour programmer en Python. Il est vrai que la route est encore longue mais vous êtes dans le bon chemin! Donc le conseil que nous pouvons vous donner est de bien maîtriser ces structures car elles sont indispensables à la programmation dans n’importe quel langage. Pour cela, il suffit de pratiquer, pratiquer et PRATIQUER encore ! Vous pouvez commencer par des structures très simples comme celles de ce tutoriel puis passer à des programmes plus complexes. Très bon courage et bonne route ! J

Article publié le 20 Septembre 2020par Mouna HAMIM