Programmation Python/Structure de contrôle

Un livre de Wikibooks.

Programmation Python
Partie 1 : Introduction
Partie 2 : Le langage
Partie 3 : Les bibliothèques
Partie 4 : Autour de Python
Annexe
Modifier ce modèle

Sections

[modifier] notion de bloc, instruction pass

De manière générale, un bloc contient tout le code avec une même indentation.

ceci est le bloc principal
if condition:
    bloc 2
    if condition2:
        bloc 3
    fin du bloc 2
fin du bloc 1

Si à un endroit on a syntaxiquement besoin d'un bloc mais qu'il n'y a rien à faire, on peut utiliser l'instruction pass, qui justement ne fait rien

if condition:
    pass
else:
    instruction ...

[modifier] l'instruction if

On utilise très souvent cette structure de contrôle. Sa syntaxe est très simple :

if condition:
    instructions
    ...

L'indentation après le ":" est obligatoire.

Cette structure de contrôle permet de tester une condition et de n'exécuter les instructions que si cette condition est vérifiée. Exemple:

a = 11
if a > 10 :
    print "a est plus grand que dix"

"if" veut dire "si" en français.

En exécutant ce programme, on voit "a est plus grand que dix" apparaître à l'écran. On peut perfectionner le programme pour prendre en compte le cas ou a est plus petit que dix:

if a > 10 :
    print "a est plus grand que dix"
else:
    print "a n'est pas plus grand que dix"

"else" veut dire "sinon" en français.

On utilise aussi parfois elif (contraction de "else if"):

if a > 10 :
    print "a est plus grand que dix"
elif a == 10:
    print "a est égal à dix"
else:
    print "a est plus petit que dix"

[modifier] l'instruction while

permet d'exécuter des commandes tant qu'une ou plusieurs conditions sont vraies.

while condition:
   commandes

par exemple :

i=0
while i<5:
   i=i+1
   print i,

donne à l'exécution :

1 2 3 4 5

[modifier] l'instruction for

exemple de la boucle en C for (i=0; i<5 ; i++ )

for i in range(5) : 
   commandes

[modifier] les instructions break, continue

L'instruction break permet d'arrêter une boucle avant sa fin. L'instruction continue est similaire, mais au lieu d'arrêter la boucle, elle passe à l'étape suivante.

for i in range(5):
    if i==3:
        break
    print i

affichera 0 1 2 , tandis que

for i in range(5):
   if i==3:
        continue
   print i

affichera 0 1 2 4