[Introduction à Python] Comment itérer avec la fonction range?

Site de référence: [Introduction to Python] Comment itérer avec la fonction range?

[Introduction à Python] Comment itérer avec la fonction range?

En Python, l'instruction for peut être utilisée pour répéter le processus un certain nombre de fois. À ce moment-là, vous pouvez préparer une liste de valeurs numériques et la faire pivoter de cette longueur, mais l'utilisation de range facilite l'écriture comme Python.

Cette fois, je vais vous expliquer comment utiliser range en Python.

Comment utiliser la gamme

Si vous souhaitez répéter le processus un certain nombre de fois en Python, vous pouvez le faire en utilisant la liste de la longueur de la phrase. Par exemple, si vous souhaitez répéter 5 fois, utilisez une liste de longueur 5.

list1 = [1, 2, 3, 4, 5]
count = 0

for x in list1:
    count += 1
    
print('Nombre de boucles:{}'.format(count))

Résultat d'exécution

Nombre de boucles: 5

Cette méthode est très bien, mais si vous la répétez longtemps, par exemple 100 ou 1000 fois, cela peut être fastidieux et long d'avoir une liste de cette longueur.

Si vous souhaitez répéter la boucle un certain nombre de fois, utilisez la fonction de plage. La fonction range est une fonction qui génère automatiquement une liste continue d'entiers d'une longueur spécifiée. En combinant l'instruction for et la fonction range, vous pouvez effectuer une boucle autant de fois que vous le souhaitez.

pour variable dans la plage([Numéro de départ,]Dernier numéro[,Montant à augmenter]):
    #Traitement en boucle

range a trois arguments: le numéro de départ, le dernier numéro et le montant croissant, dont le numéro de départ et le montant croissant peuvent être omis. Si vous passez un nombre à range (), ce sera le dernier numéro et une liste sera créée contenant les valeurs de 0 à "dernier numéro - 1".

count = 0

for x in range(5):
print(x)
    count += 1
    
print('Nombre de boucles:{}'.format(count))

Résultat d'exécution

0 1 2 3 4 Nombre de boucles: 5

Dans cet exemple, puisque 5 est passé à range (), une "liste de longueur 5 avec des éléments de 0 à 4" est créée, et les éléments sont extraits un par un à partir de là, donc boucle 5 fois. Je peux. Si vous voulez que le premier nombre soit n'importe quel nombre au lieu de 0, entrez le «numéro de départ» de l'argument.

count = 0

for x in range(1, 5):
    print(x)
    count += 1
    
    
print('Nombre de boucles:{}'.format(count))

Résultat d'exécution

1 2 3 4 Nombre de boucles: 4

Changement de l'argument de range de (5) à (1,5). Cela a abouti à une "liste de longueur 4 avec des éléments de 1 à 4" renvoyés par plage, résultant en 4 boucles.

Vous pouvez également modifier librement la valeur ajoutée à l'élément suivant en spécifiant le «montant d'augmentation». Cela facilite la création de listes qui augmentent de 2 de 0 à 8 et de listes qui augmentent de 3 de 0 à 9.

count = 0

for x in range(0, 10, 2):
    print(x)
    count += 1
    
print('Nombre de boucles:{}'.format(count))

Résultat d'exécution

0 2 4 6 8 Nombre de boucles: 5

Dans cet exemple, le début est 0 et la fin est 10, mais le montant à augmenter est 2. Par conséquent, range renverra "une liste de longueur 5 qui augmente de 2 de 0 à 8", donc le nombre de boucles sera de 5.

Vous pouvez également utiliser des nombres négatifs dans la plage. Vous pouvez également créer une liste dans l'ordre inverse en inversant les valeurs de début et de fin et en augmentant le montant à un nombre négatif.

count = 0

for x in range(10, 0, -2):  #Passer un nombre négatif
    print(x)
    count += 1
    
print('Nombre de boucles:{}'.format(count))

Résultat d'exécution

10 8 6 4 2 Nombre de boucles: 5

Différence de xrange

Si votre version de Python est 2.x.x, il existe une fonction xrange très similaire à range. L'utilisation et le résultat de l'exécution de xrange sont exactement les mêmes que ceux de range.

count = 0

for x in xrange(5):
print(x)
    count += 1
    
print('Nombre de boucles:{}'.format(count))

Résultat d'exécution

0 1 2 3 4 Nombre de boucles: 5

Quelle est donc la différence entre range et xrange, c'est que xrange économise de la mémoire. range crée une liste avec les éléments spécifiés par l'argument et exécute l'instruction for en extrayant les éléments de la liste. D'autre part, xrange n'exécute pas l'instruction for après la première création de la liste, mais génère la valeur selon les besoins lors de la récupération avec l'instruction for. En d'autres termes, comme il ne crée pas de liste, xrange peut économiser de la mémoire pour le même processus.

Cependant, la différence entre range et xrange est si petite que vous n'avez généralement pas besoin d'utiliser xrange. Fondamentalement, vous devez utiliser range.

De plus, dans la série Python3, xrange lui-même a été aboli car la structure de range est proche de xrange. Par conséquent, dans le cas de la série Python3, il est préférable d'utiliser range sans s'en soucier.

Recommended Posts

[Introduction à Python] Comment itérer avec la fonction range?
[Introduction à Python] Comment obtenir des données avec la fonction listdir
[Introduction à Python] Comment fractionner une chaîne de caractères avec la fonction split
[Python] Explique comment utiliser la fonction range avec un exemple concret
[Introduction à Python] Comment écrire une chaîne de caractères avec la fonction format
[Introduction à l'application Udemy Python3 +] 44. fonction range
[Python] Explique comment utiliser la fonction format avec un exemple
Introduction à Python avec Atom (en route)
[Introduction à Python] Comment trier efficacement le contenu d'une liste avec le tri par liste
[Python] Comment spécifier l'emplacement de téléchargement avec youtube-dl
[Introduction à Udemy Python3 + Application] 27. Comment utiliser le dictionnaire
[Introduction à Udemy Python3 + Application] 30. Comment utiliser l'ensemble
[Introduction à Python] Comment arrêter la boucle en utilisant break?
[Python] Comment réécrire le style de table avec python-pptx [python-pptx]
[Introduction à Python] Comment obtenir l'index des données avec l'instruction for
Python: comment utiliser async avec
Comment utiliser la fonction zip
[Introduction à Python] Comment analyser JSON
Comment obtenir la version Python
Comment démarrer avec Python
Comment calculer la date avec python
Comment utiliser la fonction zip de python
J'ai essayé de simuler la propagation de l'infection avec Python
Comment entrer dans l'environnement de développement Python avec Vagrant
[Introduction à Python] Comment utiliser la classe en Python?
[Python] Définissez la plage du graphique avec matplotlib
[Introduction à l'application Udemy Python3 +] 48. Définition des fonctions
[Python 3.8 ~] Comment définir intelligemment des fonctions récursives avec des expressions lambda
Introduction au remplissage d'image Python Remplissage d'image à l'aide d'ImageDataGenerator
[python] Comment utiliser __command__, explication des fonctions
[Introduction à l'application Udemy Python3 +] 45. fonction enumerate
Comment utiliser BigQuery en Python
[Introduction à l'application Udemy Python3 +] 41. fonction d'entrée
[Introduction à Python] Utilisons foreach avec Python
[Introduction à Python] Comment utiliser l'opérateur in dans l'instruction for?
Comment faire un test de sac avec python
Comment calculer le rayonnement X (CXB) de fond d'espace avec Python en spécifiant la plage de flux
Comment afficher le japonais python avec lolipop
[Introduction à l'application Udemy Python3 +] 46. fonction zip
Comment entrer le japonais avec les malédictions Python
De l'introduction de JUMAN ++ à l'analyse morphologique du japonais avec Python
Comment envoyer une requête à l'API DMM (FANZA) avec python
[Introduction à Python] Comment utiliser l'opérateur booléen (et ・ ou ・ non)
La route de la compilation vers Python 3 avec Thrift
Comment installer python3 avec docker centos
Le 16ème problème d'écriture en temps réel hors ligne a été résolu avec Python
Comment couper la partie inférieure droite de l'image avec Python OpenCV
[Introduction à Udemy Python3 + Application] 47. Traitez le dictionnaire avec une instruction for
[Introduction à Python] Comment juger de l'authenticité avec l'instruction if (True et None)
Le 16ème comment écrire un problème de référence en temps réel hors ligne à résoudre avec Python
Comment obtenir la différence de date et d'heure en secondes avec Python
[Python] Comment utiliser la fonction enumerate (extraire le numéro d'index et l'élément)
[Python] Comment définir la taille de la fenêtre (cliente) dans le navigateur avec Selenium
Le 19ème comment écrire un problème de référence en temps réel hors ligne à résoudre avec Python
Le 15e problème d'écriture en temps réel hors ligne a été résolu avec python
[Introduction à Python] Quelle est la méthode de répétition avec l'instruction continue?
Comment télécharger avec Heroku, Flask, Python, Git (4)