if a_condition: # bloc a exécuter lorsque a_condition est vraie elif other_condition: # bloc a exécuter lorsque a condition est fausse # et other_condition est vraie else: # bloc a exécuter si les conditions précédentes sont fausses.
Pour les versions Python > 3.10, l'équivalent de la structure switch-case est match
x = 3 match x: case 1: print("x est égal à 1") case 2: print("x est égal à 2") case 3: print("x est égal à 3") case 4: print("x est égal à 4") case _: print("x n'est pas égal à 1, 2, 3 ou 4")
Pour les version de Python < 3.10, la structure de contrôle swicth case n'existe pas. On peut la remplacer par des if..elseif ou utiliser les dictionnaires.
if n == 0: print "n vaut zéro\n" elif n== 1 or n == 9 or n == 4: print "n est un carré\n" elif n == 2: print "n est pair\n" elif n== 3 or n == 5 or n == 7: print "n est premier\n
La façon élégante et pythonienne consiste à s'appuyer sur la puissance des dictionnaires. On définit un dictionnaire ayant pour clés les différentes valeurs que peut prendre variable utilisée normalement dans le case et pour valeur respective la fonction de traitement.
options = {0 : zero, 1 : sqr, 4 : sqr, 9 : sqr, 2 : even, 3 : prime, 5 : prime, 7 : prime, } def zero(): print "You typed zero.\n" def sqr(): print "n is a perfect square\n" def even(): print "n is an even number\n" def prime(): print "n is a prime number\n"
Une fois définit il suffit
options[num]()
Exécuter un bloc d'instructions un nombre déterminé de fois. Pour traiter les éléments d'une liste ou un nombre connu d'éléments:
for i in range(10): print i
Exécution du bloc d'instructions tant que la condition est vraie
while ma_condition == True: instruction 1 instruction 2 ... instruction n
La boucle do while présente dans certains langages n'existe pas en Python. On construit son équivalent à partir de la boule while:
Boucle do while en C
do { instruction 1 instruction n } while(condition)
Equivalent do while en Python:
while True: instruction 1 instruction n if not condition: break