La fonction range()

Si vous devez itérer sur une suite de nombres, la fonction native range() est faite pour cela. Elle génère des suites arithmétiques :

for i in range(5):
    print(i)
affiche ceci:
0
1
2
3
4

Le dernier élément fourni en paramètre ne fait jamais partie de la liste générée ; range(10) génère une liste de 10 valeurs, dont les valeurs vont de 0 à 9. Il est possible de spécifier une valeur de début et une valeur d'incrément différentes (y compris négative pour cette dernière, que l'on appelle également parfois le « pas ») :


list(range(5, 10))  # list permet de voir les nombres que génère le range
[5, 6, 7, 8, 9]

list(range(0, 10, 3))
[0, 3, 6, 9]

list(range(-10, -100, -30))
[-10, -40, -70]

Pour itérer sur les indices d'une séquence, on peut combiner les fonctions range() et len() :


a = ['Mary', 'had', 'a', 'little', 'lamb']
for i in range(len(a)):
    print(i, a[i])
affiche ceci:
0 Mary
1 had
2 a
3 little
4 lamb


Modifié le: mercredi 18 mai 2022, 00:06