python03 if、while、for
if
滿足if的條件就print (‘Bingo‘),不滿足則跳過;
滿足elif的條件就......,不滿足就跳過;
如果if和elif的條件都不滿足,就執行else下面的代碼。
圖中代碼要註意int(input)這裏,針對希望寫入數字時,就要使用int給轉義成數字格式,否則默認input是字符串,執行代碼時會報錯。
滿足elif的執行結果
while
1.無限循環
當一直為True時,也就是一直為真,就會執行count +=1(相當於count = count +1),每加一次1就賦值給count,並打印出來。
只是一瞬間數字就加到了490964,這裏只能強制停止循環,否則會一直加下去。
2.break
If條件成立的話就print,然後break會跳出while循環;
否則就一直while循環
3.設置嘗試限制次數
我們通過一個變量count來進行計數,初始值為0
嘗試一次,就執行一次count +=1,當滿足count等於3時(限制次數為3),就通過break結束while循環。
4.while條件修改
刪除標題3中的if count == 3這塊語句,直接在while中定義,當count<3時,就執行while語句,這樣就減少並優化了代碼,執行結果是一樣的。
5.while與else,選擇性退出循環
當while的條件成立時,就運行while下面的子代碼;
如果while的條件不成立,就運行最下面else的代碼。
如果break就不會執行下面任何代碼了,包括else。
同時代碼中還設立了選擇性退出的語句,如果if count ==3,就使用y和n來進行選擇是否繼續循環,只要輸入的不是n,就繼續循環; 繼續的話就將count清0,這樣while循環條件繼續成立就可以繼續循環。
如果選擇n的話,因為count已經等於3了,不滿足while條件,就不會再循環了,就會執行下面的else代碼。
可以看到選擇y後,還能繼續去guess,選擇了n就執行了下面的else代碼;
For循環
1.循環數字範圍
For循環,每循環一次就將當前循環的值賦值給i。
Range就是範圍的意思,根據括號中的10,就是0到9,從0開始,一共10個數字。
i是一個名稱,in會將0到9循環的賦值給i
print會將每一個輪詢的內容打印出來,直到輪詢結束。
2.for替代while
最多能for循環3次,如果for循環完成就會執行else代碼;
如果沒有執行完成for循環,就break,下面就不會執行else代碼了。
3.步長
0,10表示定義從0到10這個範圍數字,然後對這個範圍進行循環;
2表示步長,也就是每隔2個數字循環一次。
執行結果為每隔2個循環一次,沒有循環到10,是因為最後一個數字不進行循環,也就是說實際數字範圍是到9,不滿足步長2的循環,所以最終只循環到了8。
4.pycharm的斷點測試
從圖中可以看到行數的右邊,代碼的左邊默認是空的,沒有任何標記。
通過使用鼠標左鍵在每一行標的右邊一次進行點擊,點擊後就會出現紅點。
在工具欄中找到debug圖標,然後點擊(在當前file文件右鍵中也可以找到debug)
點擊debug後,被標記斷點的地方,顏色就會改變,可以看到除了121行,其他行都是紅色,121行之所以顏色不同,是表示當前代碼卡在121行,該行代碼還沒有執行。
點擊debug以後,在pycharm工具下方會彈出該窗口
註意圖中圈起來的部分,一個是箭頭,一個是Debugger,當前我們處於Debugger窗口
點擊一下箭頭表示執行當前代碼行(121行)
點擊箭頭後可以看到121行,代碼右邊多處來一個信息,i:0表示當前i等於0的意思。
然後第122行代碼顏色又變了,表示當前代碼卡在第二行,還沒有執行。
所以debug功能是非常強大的,可以通過該方式一步一步的去查看我們的代碼每步是如何執行的,來判斷我們的代碼是否正確執行; debug是一個非常好用的排錯功能。
從pycharm下面的Debugger窗口也可以看到執行第一步後的一些信息,可以看到i={int}0,表示當前的i等於0,i屬於int格式。
切換到Console窗口,然後不斷的去點擊箭頭來觀察代碼執行的每一步的結果,這樣就可以判斷執行代碼的每一步是否正確。
5.continue
continue用來跳出本次循環,執行下一次循環;也就是說執行continue後,下面的代碼就不會再執行,根據循環執行下一次循環。
設立if條件<3時,打印一次 i 和test,所以當 i 等於3時,if條件就不滿足了,就會執行else中的continue,接下來的循環就不會不會打印 i 對應的值,也不會打印test了。
6.嵌套循環
每一個大循環中會有10個小循環
10*10,一共循環了100次
設立內循環停止循環的條件,當大於等於3時,就停止循環。
python03 if、while、for