ForLoop - Python Wiki

Utilisation en Python

  • Quand dois-je utiliser des boucles?

pour les boucles sont traditionnellement utilisées lorsque vous avez un bloc de code que vous voulez répéter un certain nombre de fois. Le python pour une itération des états sur les éléments d'une séquence dans l'ordre, l'exécution du bloc chaque fois. Contraste pour la déclaration avec la boucle « » tout « ». utilisé lorsqu'une condition doit être vérifiée chaque itération, ou de répéter un bloc de code pour toujours. Par exemple:

Pour la boucle de 0 à 2, fonctionnant donc 3 fois.

Alors que la boucle de 1 à l'infini, en cours d'exécution donc pour toujours.

Comme vous pouvez le voir, ces constructions en boucle servent à des fins différentes. La boucle court pour un montant fixe - dans ce cas, 3, tandis que la boucle de temps court jusqu'à la condition de boucle changements; dans cet exemple, la condition est le booléen vrai qui ne changera jamais, il pourrait théoriquement courir pour toujours. Vous pouvez utiliser une boucle avec un grand nombre afin d'obtenir le même effet que d'une boucle while, mais ce qui est le point de le faire lorsque vous avez une construction qui existe déjà? Comme le dit le vieil adage, « pourquoi essayer de réinventer la roue? ».
  • Comment travaillent-ils?
Si vous avez fait une programmation avant, vous avez sans doute rencontré une boucle ou un équivalent. De nombreuses langues ont des conditions dans la syntaxe de leur boucle, comme une expression relationnelle pour déterminer si la boucle est fait, et une expression d'incrément pour déterminer la valeur suivante de la boucle. Dans ce python est commandé à la place par la génération de la séquence appropriée. Fondamentalement, tout objet avec une méthode iterable peut être utilisé dans une boucle. Même les chaînes, en dépit de ne pas avoir une méthode itérables - mais nous ne passer à ici. Avoir un procédé iterable signifie essentiellement que les données peuvent être présentées sous forme de liste, où il y a des valeurs multiples d'une manière ordonnée. Vous pouvez définir vos propres iterables en créant un objet avec des méthodes next () et iter (). Cela signifie que vous serez rarement affaire à des chiffres bruts en matière de boucles pour en Python - grand pour à peu près tout le monde!
  • boucles emboîtées

Lorsque vous avez un bloc de code que vous voulez exécuter x nombre de fois, puis un bloc de code dans ce code que vous voulez exécuter y nombre de fois, vous utilisez ce qu'on appelle une « boucle imbriquée ». En Python, ceux-ci sont fortement utilisés chaque fois que quelqu'un a une liste de listes - un objet itérable dans un objet itérable.

Comme la boucle while, la boucle peut être fait pour sortir avant que l'objet donné est terminé. Cela se fait en utilisant l'instruction break, qui abandonnent immédiatement de la boucle et contine exécution à la première instruction après le bloc. Vous pouvez également avoir une clause d'autre option, qui court dans le cas de la sortie pour la boucle proprement - qui est, sans se rompre.

Choses dont il faut se rappeler

Le « » range « » est vu si souvent dans des déclarations que vous pourriez penser plage fait partie de la syntaxe. Il n'est pas: il est un Python fonction intégrée qui retourne une séquence, qui répond à l'exigence de fournir une séquence de la déclaration pour itérer sur. En Python 2.x, plage génère la séquence entière lorsqu'elle est appelée, alors que xrange est un générateur - il produit des valeurs à la demande, et non pas tout fromt. Vous verrez souvent xrange est utilisé beaucoup plus fréquemment que gamme. Ceci est pour une seule raison - l'utilisation des ressources. Pour les grandes séquences, la différence dans l'utilisation de la mémoire peut être considérable. xrange utilise moins de mémoire, et si la sortie de boucle au début, il n'y a pas besoin de perdre du temps à créer les numéros inutilisés. Cet effet est minuscule dans les listes plus petites, mais augmente rapidement dans les listes plus grandes que vous pouvez voir dans les exemples ci-dessous. Pour 3.x Python, la gamme a été changé, vous pouvez le considérer comme étant équivalente à la xrange 2.x Python. qui n'est défini en Python 3.x.

Cordes en tant itérables

Listes comme un itérables

Boucle sur les listes de listes

Créer votre propre itérables

gamme vs xrange (Python 2)

Le temps sur les petites plages

Votre propre générateur de plage en utilisant le rendement

Articles Liés