Logique de
Programmation

Concepts avancés

Conditions imbriquées

Les conditions peuvent être imbriquées les unes dans les autres. Par exemple:

Python

Ces conditions peuvent être très utiles pour résoudre des problèmes complexes. Voici un exemple avec la vie réelle

Ce problème peut être résolu avec une structure conditionnelle imbriquée, comme ceci:

Python

Il est possible d'imbriquer des conditions indéfiniment, mais il est conseillé de ne pas en faire un usage abusif, car cela rend le code plus difficile à lire et à maintenir. Typiquement, on essaie d'utiliser jusqu'à 2 ou 3 niveaux d'imbrication maximum.

Opérateur ternaire

L'opérateur ternaire est une forme condensée de la structure conditionnelle if. Il est souvent utilisé pour affecter une valeur à une variable en fonction d'une condition. Par exemple:

Python

Dans cet exemple, si la condition est vraie, la variable prend la valeur valeur1, sinon elle prend la valeur valeur2. Bien que cet opérateur est pratique, il est a noter que l'on peut faire la même chose avec une structure conditionnelle if et else de cette manière:

Python

Switch

Depuis Python 3.10, il est possible d'utiliser une structure conditionnelle match qui est similaire à la structure switch que l'on retrouve dans d'autres langages de programmation. Cette structure permet de comparer une valeur à une liste de valeurs et d'exécuter un bloc de code en fonction de la valeur. Voici un exemple:

Python

Dans cet exemple, la valeur est comparée à valeur1, valeur2, valeur3 et _. Si la valeur est égale à valeur1, le bloc de code 1 est exécuté. Si la valeur est égale à valeur2, le bloc de code 2 est exécuté et ainsi de suite. Si aucune des valeurs n'est égale à la valeur, le bloc de code 4 est exécuté. Encore une fois, cette fonctionalité pourrait être faite avec une structure conditionnelle if et elif, mais le match rend le code plus lisible lorsque l'on a un nombre important de conditions à vérifier.