Python 3 - pour les instructions de boucle

L'instruction for en Python a la capacité d'itérer sur les éléments de n'importe quelle séquence, telle qu'une liste ou une chaîne.

Syntaxe

for iterating_var in sequence:
   statements(s)

Si une séquence contient une liste d'expressions, elle est évaluée en premier. Ensuite, le premier élément de la séquence est affecté à la variable itérante iterating_var . Ensuite, le bloc d'instructions est exécuté. Chaque élément de la liste est affecté à iterating_var et le bloc instruction (s) est exécuté jusqu'à ce que la séquence entière soit épuisée.

Représentation schématique

La fonction range ()

La fonction intégrée range () est la bonne fonction pour parcourir une séquence de nombres. Il génère un itérateur de progressions arithmétiques.

Exemple

>>> range(5)
range(0, 5)
>>> list(range(5))
[0, 1, 2, 3, 4]

Exemple

range () génère un itérateur pour faire progresser les entiers commençant par 0 jusqu'à n-1. Pour obtenir un objet liste de la séquence, il est transtypé en list (). Maintenant, cette liste peut être itérée à l'aide de l'instruction for.

>>> for var in list(range(5)):
   print (var)

Production

Cela produira la sortie suivante.

0
1
2
3
4

Exemple

#!/usr/bin/python3

for letter in 'Python':     # traversal of a string sequence
   print ('Current Letter :', letter)
print()
fruits = ['banana', 'apple',  'mango']

for fruit in fruits:        # traversal of List sequence
   print ('Current fruit :', fruit)

print ("Good bye!")

Production

Lorsque le code ci-dessus est exécuté, il produit le résultat suivant -

Current Letter : P
Current Letter : y
Current Letter : t
Current Letter : h
Current Letter : o
Current Letter : n

Current fruit : banana
Current fruit : apple
Current fruit : mango
Good bye!

Itération par index de séquence

Une autre façon d'itérer à travers chaque élément est le décalage d'index dans la séquence elle-même. Voici un exemple simple -

Exemple

#!/usr/bin/python3

fruits = ['banana', 'apple',  'mango']
for index in range(len(fruits)):
   print ('Current fruit :', fruits[index])

print ("Good bye!")

Production

Lorsque le code ci-dessus est exécuté, il produit le résultat suivant -

Current fruit : banana
Current fruit : apple
Current fruit : mango
Good bye!

Ici, nous avons pris l'aide de la fonction intégrée len (), qui fournit le nombre total d'éléments dans le tuple ainsi que la fonction intégrée range () pour nous donner la séquence réelle à parcourir.

Utilisation de l'instruction else avec des boucles

Python prend en charge le fait d'avoir une instruction else associée à une instruction de boucle.

  • Si la else instruction est utilisée avec un for boucle, le else block n'est exécuté que si les boucles for se terminent normalement (et non en rencontrant une instruction break).

  • Si la else instruction est utilisée avec un while boucle, le else l'instruction est exécutée lorsque la condition devient fausse.

Exemple

L'exemple suivant illustre la combinaison d'une instruction else avec un for instruction qui recherche un nombre pair dans une liste donnée.

#!/usr/bin/python3

numbers = [11,33,55,39,55,75,37,21,23,41,13]

for num in numbers:
   if num%2 == 0:
      print ('the list contains an even number')
      break
else:
   print ('the list doesnot contain even number')

Production

Lorsque le code ci-dessus est exécuté, il produit le résultat suivant -

the list does not contain even number