


En Python, quelle est la différence entre une boucle for et une boucle while ?
Dans cet article, nous découvrirons la différence entre la boucle « for » et la boucle « while ».
Pour la boucle
Une boucle for est une instruction de flux de contrôle qui exécute du code pour un nombre prédéfini d'itérations. Le mot-clé utilisé dans cette instruction de flux de contrôle est "for". Utilisez une boucle for lorsque le nombre d'itérations est connu.
La boucle for est divisée en deux parties -
Titre - Cette partie précise les itérations de la boucle. Dans la section d'en-tête, la variable de boucle est également déclarée, ce qui indique au corps quelle itération est en cours d'exécution.
Body - La section body contient les instructions exécutées pour chaque itération.
Les instructions d'initialisation, de vérification de condition et d'itération sont toutes écrites au début de la boucle.
Utilisez-le uniquement lorsque le nombre d'itérations est connu à l'avance.
Si aucune condition n'est mentionnée dans la boucle "for", la boucle itérera un nombre infini de fois.
L'initialisation n'est effectuée qu'une seule fois et ne sera pas répétée.
La déclaration d'itération est écrite au début.
Il s'exécutera donc une fois que toutes les instructions de la boucle auront été exécutées.
Grammaire
for(initialization; condition; iteration){ //body of the 'for' loop }
Exemple
Le programme suivant utilise une boucle for pour imprimer tous les éléments de la liste -
# input list inputList = [10, 20, 30, 40, 50] print("Input list elements:") # traversing through all elements of the list using for loop for element in inputList: # printing each element of the list print(element)
Sortie
Une fois exécuté, le programme ci-dessus générera le résultat suivant -
Input list elements: 10 20 30 40 50
Boucle While
Boucle qui exécute une seule instruction ou un ensemble d'instructions par rapport à une condition vraie donnée. Cette boucle est représentée par le mot-clé « while ». Une boucle "while" est utilisée lorsque le nombre d'itérations est inconnu. Répétez cette instruction jusqu'à ce que la valeur booléenne soit fausse. Puisque la condition est testée au début de la boucle while, elle est également appelée boucle de pré-test.
L'initialisation et la vérification des conditions sont effectuées au début de la boucle.
Utilisé uniquement lorsque le nombre d'itérations est inconnu.
Si aucune condition n'est mentionnée dans la boucle "while", cela provoquera une erreur de compilation.
Si l'initialisation est effectuée tout en vérifiant la condition, alors l'initialisation aura lieu à chaque itération de la boucle.
L'instruction d'itération peut être écrite à tout moment dans la boucle.
Grammaire
while ( condition) { statements; //body of the loop }
Exemple
Le programme suivant utilise une boucle for pour imprimer tous les éléments de la liste -
# Initializing a dummy variable with 1 i = 1 # Iterate until the given condition is true while i < 10: # printing the current value of the above variable print(i) # incrementing the value of i value by 1 i += 1
Sortie
Une fois exécuté, le programme ci-dessus générera le résultat suivant -
1 2 3 4 5 6 7 8 9
Quand devez-vous utiliser les boucles For et While ?
Une boucle for est utilisée lorsque nous connaissons le nombre d'itérations (c'est-à-dire combien de fois une instruction doit être exécutée). C'est pourquoi lorsque nous initialisons la boucle for, nous devons définir le point final.
Lorsque le nombre d'itérations est inconnu, utilisez une boucle while. Cela peut être utilisé lorsque nous devons terminer une boucle en fonction de conditions autres que le nombre de répétitions. Dans ce cas, il n’est pas nécessaire de connaître la situation à l’avance. C'est pourquoi on peut utiliser des expressions booléennes dans l'initialisation des boucles.
Sans conditions
Si aucune condition n'est spécifiée dans les boucles for et while, les boucles itéreront à l'infini.
Sans conditions, voici la différence entre la boucle for et la boucle while -
For Loop - Dans l'exemple ci-dessous, la boucle s'exécutera un nombre infini de fois.
Exemple
l = [1] for m in l: print("TutorialsPoint") l.append(m)
Sortie
Une fois exécuté, le programme ci-dessus générera le résultat suivant -
TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint . . . . runs infinite times
Nous commençons par une liste et l'initialisons avec une seule valeur aléatoire. Ensuite, à l’aide d’une boucle for et de l’opérateur in, nous parcourons les éléments de la liste. À l'intérieur de la boucle, il imprimera du texte aléatoire, puis nous ajouterons un autre élément à la liste afin que la boucle for s'exécute à nouveau à cause du nouvel élément. Cette boucle sera exécutée un nombre infini de fois.
While Loop - Dans l'exemple ci-dessous, la boucle s'exécutera un nombre infini de fois.
Exemple
while True: print("TutorialsPoint")
Sortie
Une fois exécuté, le programme ci-dessus générera le résultat suivant -
TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint . . . . runs infinite times
差异表
比较基础 | For循环 | While循环 |
---|---|---|
关键字 | 使用for关键字 | 使用while关键字 |
已使用 | 当迭代次数已知时,使用 For 循环。 | 当迭代次数未知时使用While循环。 |
不存在条件 | 不存在条件时循环无限次运行 | 在不存在条件的情况下返回编译时错误 |
初始化的性质 | 一旦完成,不可重复 | 在while循环中,每次迭代都可以重复。 |
函数 | 要进行迭代,请使用 range 或 xrange 函数。 | while循环中没有这样的函数。 |
基于迭代的初始化 | 在循环开始时完成。 | 在 while 循环中,可以在循环体中的任何位置执行此操作。 |
生成器支持 | Python 的 for 循环可以迭代生成器。 | While 循环不能直接在生成器上迭代。 |
速度 | for 循环比 while 循环更快。 | 与 for 循环相比,While 循环相对较慢。 |
结论
在本文中,我们通过示例了解了 for 和 while 循环之间的区别,以及 while 和 for 循环的工作原理。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Solution aux problèmes d'autorisation Lors de la visualisation de la version Python dans Linux Terminal Lorsque vous essayez d'afficher la version Python dans Linux Terminal, entrez Python ...

Comment enseigner les bases de la programmation novice en informatique dans les 10 heures? Si vous n'avez que 10 heures pour enseigner à l'informatique novice des connaissances en programmation, que choisissez-vous d'enseigner ...

Comment éviter d'être détecté lors de l'utilisation de FiddlereVerywhere pour les lectures d'homme dans le milieu lorsque vous utilisez FiddlereVerywhere ...

Lorsque vous utilisez la bibliothèque Pandas de Python, comment copier des colonnes entières entre deux frames de données avec différentes structures est un problème courant. Supposons que nous ayons deux dats ...

Comment Uvicorn écoute-t-il en permanence les demandes HTTP? Uvicorn est un serveur Web léger basé sur ASGI. L'une de ses fonctions principales est d'écouter les demandes HTTP et de procéder ...

Fastapi ...

Utilisation de Python dans Linux Terminal ...

Comprendre la stratégie anti-rampe d'investissement.com, Beaucoup de gens essaient souvent de ramper les données d'actualités sur Investing.com (https://cn.investing.com/news/latest-news) ...
