Un rappel en douceur sur les instructions conditionnelles de Python

La vie consiste à prendre les bonnes décisions, et nos programmes n'en sont pas épargnés. En fin de compte, nous programmons quelque chose pour certains aspects de nos vies. Nous devrions donc nous attendre à ce que nos programmes prennent des décisions..

Voici où expressions conditionnelles entrer en jeu. Ils nous aident à prendre de telles décisions par le contrôle logique de nos programmes. Les instructions conditionnelles en Python sont les suivantes: si, elif, et autre.

Mais que fait l’énoncé conditionnel? Il vérifie simplement si une déclaration (test) est vrai ou faux, sur la base de laquelle la décision est effectuée.

Programmes de branchement

contrairement à ligne droite programmes où les instructions sont exécutées dans l'ordre dans lequel elles apparaissent, programmes de branchement nous permettent de naviguer vers des déclarations indépendamment de l'ordre, mais en fonction de la décision. Les instructions conditionnelles que nous avons mentionnées ci-dessus sont considérées comme appartenant à ce type de programmes, à condition que si une instruction conditionnelle a été exécutée, l'exécution du programme se poursuit au code suivant l'instruction conditionnelle..

Structure des instructions conditionnelles 

Dans cette section, je vais décrire les différentes parties d’une déclaration conditionnelle. Une déclaration conditionnelle comprend essentiellement les parties principales suivantes:

  • un test qui évalue soit vrai ou faux
  • un bloc de code qui s'exécute si le test est vrai
  • un bloc de code optionnel si le test est faux

L'instruction conditionnelle en Python se présente donc comme suit:

si test: code sinon: code

tester est une expression booléenne, c'est-à-dire une expression dont le résultat est soit vrai ou faux. En d'autres termes, les déclarations conditionnelles nous permettent de vérifier la véracité d'une déclaration. Voyons un exemple simple de la structure ci-dessus:

x = 0 si x == 3: print 'x est égal à 3' sinon: print 'x n'est PAS égal à 3' print 'Ça y est!'

Quelle est la sortie de cet extrait de code? Allez-y, essayez-le.

À ce stade, je pense que je devrais mentionner rapidement à propos de échancrure (les espaces), que Python utilise par opposition aux accolades dans d’autres langages comme C. Dans le script ci-dessus, que se passerait-il si vous écriviez le dernier impression déclaration au même niveau sous la impression déclaration ci-dessus (le autre code)? En d’autres termes, si nous l’écrivions comme suit:

else: print 'x n’est pas égal à 5' print 'Ça y est!'

Dans ce cas, print 'C'est ça!' fera partie de la autre bloc de code.

Ceci est juste un exemple rapide d'indentation, sur lequel Python s'appuie largement dans sa syntaxe. Lorsque vous programmez en Python, vous devez vous attendre à ce que des erreurs de ce type apparaissent parfois lorsqu'il y a un problème avec votre mise en retrait:

IndentationError: attend un bloc en retrait 

Instructions conditionnelles imbriquées

La déclaration conditionnelle est dite imbriqué si la vrai bloc de code ou faux le bloc de code (c'est-à-dire else) contient une autre instruction conditionnelle. Voyons un exemple de cela:

if course1 == 'Informatique I': if course2 == 'Informatique II': print 'l'étudiant peut suivre le cours sur les structures de données' else: print 'l'étudiant ne dispose pas des conditions nécessaires pour suivre le cours sur les structures de données' 

Nous avons ici une déclaration conditionnelle imbriquée depuis le premier si déclaration contient une autre si déclaration à l'intérieur. Notez à nouveau comment le code est mis en retrait. Ceci est très critique lors de la programmation en Python.

Expressions booléennes composées

Comme vous vous en souvenez, nous avons mentionné que le tester dans la structure d'instruction conditionnelle est une expression booléenne. Parfois, vous pouvez avoir besoin de plus d’une expression booléenne dans le même test, et c’est ce que nous appelons expressions booléennes composées

Prenons un exemple qui trouve le plus petit nombre de trois nombres. Notez que le premier test est une expression booléenne composée.

si un

Dans cet exemple, nous utilisons la troisième instruction conditionnelle pour la première fois dans ce tutoriel, à savoir elif, qui se réfère à sinon si.

Nous avons également utilisé une opération booléenne appelée et, ce qui signifie que toutes les déclarations doivent être vrai afin que l'instruction suivante soit exécutée. Les opérations booléennes de Python peuvent être résumées dans le tableau suivant:

Opération booléenne La description
ou l'instruction suivante est exécutée si une expression est vraie
et toutes les expressions doivent être vraies pour que l'instruction suivante soit exécutée
ne pas l'expression est fausse si elle est vraie, et vice versa

Si vous aviez une instruction (test) avec une combinaison de ces opérations, l'ordre de priorité est le suivant: ou s'exécute en premier, puis et, puis ne pas.

Prenons un autre exemple qui montre comment utiliser des opérations booléennes avec des listes:

list = [1,2,3,4,5] x = 13 si x n'est pas dans la liste: print 'x n'est pas dans la liste'

Voyez comment nous avons utilisé ne pas dans cet exemple? Comme vous le savez, pour le bloc de code dans le si instruction à exécuter, l'instruction (expression booléenne) doit être évaluée comme suit: vrai. La déclaration évalue à l'origine à faux dans notre caspuisque 13 n'appartient pas à la liste. Si vous exécutez le programme, cependant, vous remarquerez que le impression déclaration est en cours d'exécution. Comment est-ce arrivé? C’est arrivé depuis que nous avons utilisé le ne pas opérateur, qui inverse la valeur d’évaluation initiale. Dans notre cas, il inversé faux à vrai.

Python et Switch?

Je sais que vous vous demandez peut-être jusqu’à présent quand un commutateur exemple viendra. Peut-être que si vous avez appris les instructions conditionnelles dans un autre langage de programmation, vous avez été confronté à des exemples montrant la beauté d'utiliser commutateur déclarations. La raison pour laquelle je n'ai pas mentionné d'exemples de telles déclarations est que Python n'a pas commutateur des déclarations!

Pour plus d'informations sur les conditions de Python, vous pouvez vous référer à la documentation.