Rumah  >  Soal Jawab  >  teks badan

Soalan asas untuk pemula python tentang gelung while

Tajuk: Gunakan python untuk mencetak semua nombor genap dalam 100

Kod pertama:

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

Hasil pelaksanaan kod: nombor cetakan tak terhingga 2

Kod kedua:

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

Hasil pelaksanaan kod: dicetak dengan betul

Soalan saya:
Mengapa hasil dicetak oleh sekeping kod pertama salah, tetapi sekeping kod kedua hanya menambah i=2*n pada gelung while dan hasilnya betul? Adakah mungkin dalam sekeping kod pertama, di mana n+=1, n tidak boleh menukar nilai i manakala n sentiasa menambah 1? kenapa?

大家讲道理大家讲道理2705 hari yang lalu472

membalas semua(2)saya akan balas

  • 伊谢尔伦

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

    Dalam gelung, ia akan berubah tanpa melaksanakan perubahan i = 2*n,它的值又怎么会改变. 只有执行了相应的语句,才会改变的.
    初始赋值 i = 2*n, i的值不会动态的随n Ia akan berubah hanya jika pernyataan yang sepadan dilaksanakan

    .

    balas
    0
  • 仅有的幸福

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

    Ya, menambah 1 pada n dalam sekeping kod pertama tidak mengubah nilai i, i sentiasa 2.

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

    Selagi syarat memuaskan Benar, ia akan terus gelung.

    Keadaan perenggan pertama sentiasa i < 100, iaitu 2 <

    balas
    0
  • Batalbalas