python小白基礎(chǔ)問題 關(guān)于while循環(huán)
問題描述
題目:用python打印100以內(nèi)所有的偶數(shù)
第一段代碼:
n = 1i = 2*nwhile i <= 100: print(i) n+=1
代碼執(zhí)行結(jié)果:無限的打印數(shù)字2
第二段代碼:
n = 1i = 2*nwhile i <= 100: print(i) n+=1 i = 2*n
代碼執(zhí)行結(jié)果:打印正確
我的問題:為什么第一段代碼打印出來結(jié)果是錯的,第二段代碼僅僅只是在while循環(huán)里面加上i=2*n結(jié)果就對了?難道第一段代碼中,n+=1的這一段,n在不斷地加1的過程中,無法改變i的值么?為什么?
問題解答
回答1:在循環(huán)中,沒有執(zhí)行 i = 2*n,它的值又怎么會改變. 只有執(zhí)行了相應(yīng)的語句,才會改變的. 初始賦值 i = 2*n, i的值不會動態(tài)的隨n的改變而改變,只有執(zhí)行了相應(yīng)的語句才會改變.
回答2:是的,第一段代碼n加1并沒有改變i的值,i一直是2.
while循環(huán)的語法是:while 條件: code...
只要條件滿足True,就一直循環(huán)。
第一段的條件一直是 i < 100, 即 2 < 100, 滿足條件,所以會不斷循環(huán)。
相關(guān)文章:
1. javascript - vue監(jiān)聽data中的某一數(shù)組的某一項(xiàng)2. 為什么我寫的PHP不行3. html - css布局問題,背景用用div畫的三角形是否用absolute與z-index來定位與規(guī)定在下方是否是個好方案4. 我 想好好學(xué)精通一門技術(shù),大家用的走過的路,幫我指點(diǎn)指點(diǎn)唄 讓我少走了彎路和坑的苦 ,自學(xué),自己摸5. 正則表達(dá)式 - nginx 正則,如何匹配不以/結(jié)尾且不以.xml .html .htm結(jié)尾6. Android 高德地圖如何移除添加的某個marker?7. 淺談vue生命周期共有幾個階段?分別是什么?8. index.php錯誤,求指點(diǎn)9. java - web端百度網(wǎng)盤的一個操作為什么要分兩次請求服務(wù)器, 有什么好處嗎10. html5 - 如何實(shí)現(xiàn)圖中的刻度漸變效果?
