python小白基礎問題 關於while循環
大家讲道理
大家讲道理 2017-05-24 11:35:01
0
2
506

題目:用python印出100以內所有的偶數

第一段程式碼

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

程式碼執行結果:無限的列印數字2

#第二段程式碼:

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

程式碼執行結果:列印正確

#我的問題:
為什麼第一段程式碼印出來結果是錯的,第二段程式碼只是在while循環裡面加上i=2*n結果就對了?難道第一段程式碼中,n =1的這一段,n在不斷地加1的過程中,無法改變i的值麼?為什麼?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回覆(2)
伊谢尔伦

在循環中,沒有執行 i = 2*n,它的值又怎么会改变. 只有执行了相应的语句,才会改变的.
初始赋值 i = 2*n, i的值不会动态的随n的改變而改變,只有執行了相應的語句才會改變.

仅有的幸福

是的,第一段代碼n加1並沒有改變i的值,i一直是2.

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

只要條件滿足True,就一直循環。

第一段的條件一直是 i

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板