La fonction built-in range en Python

Article mis à jour le Monday, October 18, 2021.

Python for i in range

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ée
  • stop - 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 notre 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 2021 7 idées de projets en Python pour débutants Les 10 meilleurs livres pour apprendre Python en 2021 Les 7 meilleurs livres Django en 2021 Comment créer un Bot Telegram en Python ? Comment créer un Bot Discord en Python ? Comment créer un Bot Instagram gratuitement avec Python ? Créer un Bot Twitter avec Python et AWS Lambda

APPRENEZ GRATUITEMENT À CODER EN MOINS DE 30 JOURS !
Vous voulez apprendre la programmation ?
Recevez mon ebook GRATUIT : "9 astuces pour apprendre à coder".
Découvrez si le code est fait pour vous !

Je m'appelle Thomas. Depuis ma sortie de la première promo de l'École 42, j'ai développé une des centaines d'applications et sites web. Sur ce blog, je vous apprends comment apprendre à coder pour devenir libre.