Maison  >  Questions et réponses  >  le corps du texte

Questions de base pour les débutants en Python sur la boucle while

Titre : Utilisez Python pour imprimer tous les nombres pairs inférieurs à 100

Le premier morceau de code :

n = 1
i = 2*n
while i <= 100:
    print(i)
    n+=1

Résultat de l'exécution du code : impression infinie numéro 2

Deuxième code :

n = 1
i = 2*n
while i <= 100:
    print(i)
    n+=1
    i = 2*n

Résultat de l'exécution du code : imprimé correctement

Ma question :
Pourquoi le résultat imprimé par le premier morceau de code est-il erroné, mais le deuxième morceau de code ajoute simplement i=2*n à la boucle while et le résultat est correct ? Est-il possible que dans le premier morceau de code, où n+=1, n ne puisse pas changer la valeur de i alors que n ajoute constamment 1 ? Pourquoi?

大家讲道理大家讲道理2705 Il y a quelques jours480

répondre à tous(2)je répondrai

  • 伊谢尔伦

    伊谢尔伦2017-05-24 11:37:01

    Dans la boucle, il changera sans exécuter le changement de i = 2*n,它的值又怎么会改变. 只有执行了相应的语句,才会改变的.
    初始赋值 i = 2*n, i的值不会动态的随n Il ne changera que si l'instruction correspondante est exécutée

    .

    répondre
    0
  • 仅有的幸福

    仅有的幸福2017-05-24 11:37:01

    Oui, ajouter 1 à n dans le premier morceau de code ne change pas la valeur de i, i vaut toujours 2.

    while循环的语法是:
    while 条件:
        code...
    

    Tant que la condition est vraie, la boucle continuera.

    La condition du premier paragraphe a toujours été i < 100, c'est-à-dire 2 < 100, ce qui satisfait à la condition, il continuera donc à boucler.

    répondre
    0
  • Annulerrépondre