Courscours et tutoriel pythonInformatique

cours python gratuit d’initiation : L’instruction for python

C’est le cours python numéro 13 de la série des cours d’initiation à python.

L’instruction for :

Il est également utilisé pour les boucles, en particulier lorsqu’une variable de compteur est nécessaire. L’instruction crée automatiquement cette variable, et la fait varier dans tous les éléments d’une liste. Si nous avons besoin d’une variable de compteur qui varie sur un certain ensemble numérique, utilisez simplement la fonction range ().

A titre d’exemple, prenons le programme times tables.py et modifions-le comme suit :

n = int (input ("Quel tableau voulez-vous imprimer ?"))
pour i dans l'intervalle (1, 11) : # les nombres de 1 à 10
     imprimer (n, "x", je, "=", n * je)

Lorsque le programme arrive à l’instruction for, il crée automatiquement la variable compteur i et l’affecte au premier élément de la liste (c’est-à-dire 1). Lorsqu’il atteint la fin du cycle, il attribue la valeur suivante (2, 3, …) et répète jusqu’à ce que le dernier élément soit atteint. Comme vous pouvez le voir, par rapport au while il n’est pas nécessaire d’initialiser la variable ou de l’incrémenter, car tout est fait automatiquement par le for. Un autre avantage est que le compteur n’est pas limité aux seules valeurs numériques mais peut “scroll” sur les éléments de n’importe quelle liste (en anglais le mot iterator est utilisé).

NOUVEAU PROGRAMME : citta_grandi_piccole.py

citta_grandi = ["Rome", "Milan", "Naples"]
citta_piccole = ["Tivoli", "Palombara", "Marcellina"]
pour je dans città_grandi :
     imprimer (je, "c'est une grande ville")
pour moi dans città_piccole :
     imprimer (je, "c'est une petite ville")

Ici, les chaînes qui composent les deux listes sont directement affectées à la variable i.

FAIRE DÉFILER LES ÉLÉMENTS D’UNE LISTE


Lorsque nous devons parcourir tous les éléments d’une liste, nous avons deux alternatives.

Si pour nos calculs nous n’avons pas besoin des indices des éléments nous pouvons faire varier l’itérateur directement sur les éléments de la liste, comme nous l’avons fait dans le programme précédent :

NOUVEAU PROGRAMME : prima_z.py

# dans cet exemple i contient les éléments de la liste (strings)

prima_z = ["Abbotti", "Bombetti", "Casini", "De Rompis", "Frittolini", "Grufolo",
            "Lolletti", "Mollacchi", "Nonnazzo", "Paraponzi", "Rottura", "Scarsone"]
pour je dans before_z :
     imprimer (je)

Si, par contre, nous avons également besoin des indices des éléments, nous pouvons faire varier l’itérateur sur les nombres de 0 à la longueur de la liste moins 1, en utilisant la fonction range (). Pour faire référence aux éléments, utilisez simplement les crochets. Ajoutez ces lignes au programme :

# dans cet exemple i contient les indices des éléments (0, 1, 2, ... n-1)

for i in range (len (before_z)): # range: i va de 0 à longueur moins 1
     print (i + 1, before_z [i]) # before_z [i] est le i-ème élément
                                 # remarque : j'ai utilisé i + 1 pour obtenir les nombres 1 à n

Notez qu’en écrivant pour i dans la plage (len (liste)), nous sommes sûrs que tout va bien, car les indices de la liste varient de 0 à longueur moins 1, et la plage renverra uniquement l’ensemble d’indices que vous souhaitez.

De plus, pour le for, il est possible d’utiliser les instructions break, continue, else comme pour le moment.

CYCLES EMBARQUÉS


Il est possible d’écrire deux cycles ou plus (avec des variables de compteur différentes) l’un dans l’autre. Dans ce cas, le cycle le plus à l’intérieur sera répété à chaque incrément du compteur du cycle le plus à l’extérieur. Voyons un exemple :

NOUVEAU PROGRAMME : nested_loops.py

for i in (1, 2, 3):
    for j in ("a", "b", "c"):
        print("i =", i, "e j =", j)

La sortie de ce programme est :

i = 1 e j = a
i = 1 e j = b
i = 1 e j = c
i = 2 e j = a
i = 2 e j = b
i = 2 e j = c
i = 3 e j = a
i = 3 e j = b
i = 3 e j = c

Notez que la boucle interne (avec le compteur j) est répétée trois fois, une pour chaque incrément du compteur i dans la boucle externe.

Autres articles

Modélisation Financière : Modèle Excel Automatisé pour...
La modélisation financière est une pratique clé dans le domaine...
Read more
Créer une Carte de Positionnement Concurrentiel ➤...
Une carte de positionnement concurrentiel est un outil visuel qui...
Read more
Épreuve E1 BTS Communication Corrigé : Culture...
L'épreuve de Culture Générale et Expression dans le cadre du...
Read more

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *