課程
/后端開發
/Python
/初識Python
L=[1,2,3,4]
for a in L:
? ? while a<=4:
? ? ? ? print a
這樣運行下來為什么一直顯示的是1,而且無休止進行下去
2017-07-11
源自:初識Python 5-5
正在回答
迭代只是for a in L: ? ? ?此時首先a取1 ? 然后按照你的代碼 進入下一層,當a<=4時輸出a,執行后返回的仍然是while a<=4:這里
qq_蘇格拉沒有底_14 提問者
第一次執行
while a<=4:
用的a是1
然后又沒有對a進行處理
所以不斷在判斷1<=4,然后不斷輸出1
完全沒有跳出循環的語句
LCpeople 回復 qq_蘇格拉沒有底_14 提問者
沒有循環退出的條件就會一直死循環。我覺得可以把while a<=4:這個語句刪掉,直接就是for a in L: print a 。
這樣的執行結果就可以遍歷出來1,2,3,4了
應該把while換成if
舉報
學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-07-11
迭代只是for a in L: ? ? ?此時首先a取1 ? 然后按照你的代碼 進入下一層,當a<=4時輸出a,執行后返回的仍然是while a<=4:這里
2017-07-11
第一次執行
while a<=4:
? ? ? ? print a
用的a是1
然后又沒有對a進行處理
所以不斷在判斷1<=4,然后不斷輸出1
完全沒有跳出循環的語句
2017-07-11
沒有循環退出的條件就會一直死循環。我覺得可以把while a<=4:這個語句刪掉,直接就是for a in L: print a 。
這樣的執行結果就可以遍歷出來1,2,3,4了
2017-07-11
應該把while換成if