Maison  >  Article  >  développement back-end  >  Comment résoudre le problème de la boucle infinie en Python

Comment résoudre le problème de la boucle infinie en Python

不言
不言original
2019-01-02 16:35:449859parcourir

En Python, vous pouvez utiliser les instructions for ou while pour effectuer un traitement de boucle. Si la boucle permanente ne se termine pas, on parle de boucle infinie. Dans l'article suivant, nous verrons comment résoudre le problème. de boucles infinies en Python.

Comment résoudre le problème de la boucle infinie en Python

Regardons d'abord brièvement un exemple de boucle infinie

while True:
    print("hello")

Lors de l'exécution de ce programme, la condition de "while" est toujours "Vrai " , donc bonjour sera toujours affiché. De plus, des boucles infinies peuvent être créées involontairement. Par exemple, considérons un programme qui affiche une valeur lorsque l'utilisateur entre quelque chose et se termine s'il n'y a aucune entrée.

while True:
    s = input("请输入内容")
    if(s):
        print(s, "输入的文字")

Dans ce cas, si l'utilisateur ne saisit rien, le programme peut se terminer. Par conséquent, il n’y a aucun moyen de suivre le processus de boucle, donc il bouclera à l’infini. Voici un exemple légèrement plus compliqué.

l = [0]

for i in l:
    print(i)
    l.append(i+1)

Dans ce cas, j'ajoute un élément à la liste "l" en boucle. Par conséquent, l’instruction for ne se terminera jamais à aucun moment et bouclera sans fin. Il s'agit d'un processus incorrect, le programme doit donc être revu.

Les boucles infinies involontaires peuvent consommer des quantités excessives de mémoire et de processeur de l'ordinateur. Tout d’abord, nous devons vérifier le programme pour éviter qu’il ne devienne accidentellement une boucle infinie. Plus important encore, si vous utilisez des boucles infinies, nous devons trouver un moyen de contourner ce problème. Alors, jetons un coup d'œil à Comment résoudre le problème de la boucle infinie

Nous pouvons utiliser la méthode break pour échapper à la boucle infinie, et nous pouvons utiliser la méthode break pour quitter le boucle pendant le traitement de la boucle.

Regardons exemples spécifiques

Modifions le programme ci-dessus pour qu'il ne boucle plus à l'infini

Tout d'abord,

while True:
    print("hello")

Ce qui suit est un exemple modifié à l'aide de la méthode break. Dans ce cas, on le modifie pour qu'il se termine après avoir bouclé 10 fois.

i = 0
while True:
    print("hello")
    i += 1
    if (i ==10):
        break

suivi de

while True:
    s = input("请输入内容")
    if(s):
        print(s, "输入的文字")

remplacé par

while True:
    s = input("请输入内容")
    if(s):
        print(s, "输入的文字")
    else:
        break

et enfin

l = [0]

for i in l:
    print(i)
    l.append(i+1)

ici dans dans ce cas, soyons prêts à ne pas ajouter d'éléments à la liste pendant la boucle.

l = [0, 1, 2, 3, 4]

for i in l:
    print(i)

En résumé, ce qui précède représente l'intégralité du contenu de cet article. Pour un contenu plus passionnant, vous pouvez prêter attention à d'autres didacticiels de colonnes connexes sur le site Web PHP chinois ! ! !

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn