La fonction range en Python
La fonction built-in range de Python est pratique lorsque vous devez effectuer une action un certain nombre de fois. En tant que pythoniste expérimenté, vous l’avez très probablement déjà utilisée. Mais que fait-elle au juste ?
En Python, la fonction native range()
retourne une liste de nombres en prenant de 1 a 3 entiers : start, stop et step. Range est souvent utilisé dans les boules for simples for i in range
quand on veut itérer une action un certain nombre de fois.
Les 3 paramètres que la fonction range peut recevoir sont :
start
- un entier qui détermine le premier élément dans la séquence de nombre qui va être retournéestop
- l’entier jusqu’auquel on va boucler mais sans l’inclure (comme on commence à compter à partir de 0)step
- un entier qui peut être positif ou négatif pour définir de combien on va incrémenter entre chaque élément de la liste
Comme on l’a vu dans cet autre article sur la boucle for en python, on a juste besoin d’un iterable
pour boucler dessus. Et ça tombe bien, c’est ce que la fonction range
nous renvoie !
Les Boucles for i in range en Python
Boucle for i in range avec 1 argument
En appelant range
avec un seul paramètre, on lui donne un stop
. Ainsi, range(3)
nous renvoie : [0, 1, 2]
.
Dans une boucle for, cela donne :
for i in range(3):
print(i)
Qui affichera à l’écran …
0
1
2
Boucle for i in range avec 2 arguments
En appelant range
avec deux paramètres, on lui donne un start
et un stop
. Ainsi, range(2, 8)
nous renvoie : [2, 3, 4, 5, 6, 7]
.
Dans une boucle for, cela donne :
for i in range(2, 8):
print(i)
Qui affichera à l’écran …
2
3
4
5
6
7
Boucle for i in range avec 3 arguments
Et finalement en appelant range
avec trois paramètres, on lui donne un start
, un stop
et un step
. Ainsi, range(3, 10, 2)
nous renvoie : [3, 5, 7, 9]
.
Mais on peut aussi s’amuser en donnant un step
négatif, ce qui, dans une boucle for, donnerait :
for i in range(42, 0, -7):
print(i)
Qui affichera à l’écran …
42
35
28
21
14
7
Et pour les petits malins qui veulent créer une boucle infinie avec range(42, 0, 7)
par exemple, sachez que Python ne rentrera pas dans la boucle comme le start
est plus grand que le stop
(0) et que le step
est positif.
Aller plus loin dans votre apprentissage de Python !
Python nous prouve une fois de plus être un langage robuste en étant souple et amusant. La fonction range n’a maintenant plus de secrets pour vous et vous avez également appris a maîtriser les boucles for en utilisant range !
Voici certains des articles les plus populaires en Python :
Le Guide Ultime pour Apprendre Python en 2022
7 idées de projets en Python pour débutants
Les 10 meilleurs livres pour apprendre Python en 2022
Les 7 meilleurs livres Django en 2022
Comment créer un Bot Telegram en Python ?
Comment créer un Bot Discord en Python ?

Je m'appelle Thomas. J'ai commencé à coder dans mon enfance. Depuis ma sortie de la première promo de l'École 42, j'ai développé des centaines d'applications et sites web. Sur ce blog, je vous donne les meilleurs conseils et astuces pour apprendre comment apprendre à coder efficacement.