Dans cet article, vous apprendrez à parcourir une séquence d'éléments en utilisant les différentes variantes de la boucle for.
Vidéo: Python for Loop
Qu'est-ce que la boucle for en Python?
La boucle for en Python est utilisée pour itérer sur une séquence (liste, tuple, chaîne) ou d'autres objets itérables. L'itération sur une séquence est appelée traversée.
Syntaxe de for Loop
for val in sequence: Corps de for
Voici val
la variable qui prend la valeur de l'élément à l'intérieur de la séquence à chaque itération.
La boucle continue jusqu'à ce que nous atteignions le dernier élément de la séquence. Le corps de la boucle for est séparé du reste du code à l'aide de l'indentation.
Organigramme de la boucle for
![](https://cdn.wiki-base.com/7695639/python_for_loop.jpg.webp)
Exemple: Python pour Loop
# Program to find the sum of all numbers stored in a list # List of numbers numbers = (6, 5, 3, 8, 4, 2, 5, 4, 11) # variable to store the sum sum = 0 # iterate over the list for val in numbers: sum = sum+val print("The sum is", sum)
Lorsque vous exécutez le programme, la sortie sera:
La somme est de 48
La fonction range ()
Nous pouvons générer une séquence de nombres en utilisant la range()
fonction. range(10)
générera des nombres de 0 à 9 (10 nombres).
Nous pouvons également définir le début, l'arrêt et la taille de l'étape comme range(start, stop,step_size)
. step_size prend la valeur par défaut 1 s'il n'est pas fourni.
L' range
objet est "paresseux" dans un sens car il ne génère pas tous les nombres qu'il "contient" lorsque nous le créons. Cependant, ce n'est pas un itérateur car il prend en charge in
, len
et les __getitem__
opérations.
Cette fonction ne stocke pas toutes les valeurs en mémoire; ce serait inefficace. Ainsi, il se souvient du début, de l'arrêt, de la taille de l'étape et génère le numéro suivant en déplacement.
Pour forcer cette fonction à afficher tous les éléments, nous pouvons utiliser la fonction list()
.
L'exemple suivant clarifiera cela.
print(range(10)) print(list(range(10))) print(list(range(2, 8))) print(list(range(2, 20, 3)))
Production
plage (0, 10) (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (2, 3, 4, 5, 6, 7) (2, 5, 8, 11, 14 , 17)
Nous pouvons utiliser la range()
fonction en for
boucles pour parcourir une séquence de nombres. Il peut être combiné avec la len()
fonction pour parcourir une séquence en utilisant l'indexation. Voici un exemple.
# Program to iterate through a list using indexing genre = ('pop', 'rock', 'jazz') # iterate over the list using index for i in range(len(genre)): print("I like", genre(i))
Production
J'aime la pop j'aime le rock j'aime le jazz
pour boucle avec else
Une for
boucle peut également avoir un else
bloc facultatif . La else
pièce est exécutée si les éléments de la séquence utilisée dans les sorties de boucle for.
Le break
mot-clé peut être utilisé pour arrêter une boucle for. Dans de tels cas, la partie else est ignorée.
Par conséquent, la partie else d'une boucle for s'exécute si aucune rupture ne se produit.
Voici un exemple pour illustrer cela.
digits = (0, 1, 5) for i in digits: print(i) else: print("No items left.")
Lorsque vous exécutez le programme, la sortie sera:
0 1 5 Aucun élément restant.
Ici, la boucle for imprime les éléments de la liste jusqu'à ce que la boucle s'épuise. Lorsque la boucle for s'épuise, elle exécute le bloc de code dans le else
et affiche Aucun élément restant.
Cette for… else
instruction peut être utilisée avec le break
mot - clé pour exécuter le else
bloc uniquement lorsque le break
mot - clé n'a pas été exécuté. Prenons un exemple:
# program to display student's marks from record student_name = 'Soyuj' marks = ('James': 90, 'Jules': 55, 'Arthur': 77) for student in marks: if student == student_name: print(marks(student)) break else: print('No entry with that name found.')
Production
Aucune entrée avec ce nom trouvée.