題目:用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的值麼?為什麼?
在循環中,沒有執行
i = 2*n
,它的值又怎么会改变. 只有执行了相应的语句,才会改变的.初始赋值
i = 2*n
,i
的值不会动态的随n
的改變而改變,只有執行了相應的語句才會改變.是的,第一段代碼n加1並沒有改變i的值,i一直是2.
只要條件滿足True,就一直循環。
第一段的條件一直是 i