【Python基礎知識】Python中的while語句

ii_chengzi發表於2020-04-28

很多初學Python的小夥伴不知道該從何開始學起,其實零基礎學習的話可以先學習一些Python基礎知識,等基礎打牢之後再去接觸更加深入的技術,接下來小編就為大家簡單介紹一下有關於 Python中while語句的內容,希望對大家的學習有幫助。

1、while迴圈語句

迭代(iteration)意味著反覆執行相同的程式碼塊。實現迭代的程式設計結構稱為迴圈(loop)。

假設有一項任務,要在螢幕上輸出從1到100的數字。僅僅使用之前討論過的知識,可能會寫出如下程式碼:

  1. print ( 1
  2. print ( 2
  3. print ( 3
  4. # 此處省略print(4) ~ print(99)  
  5. print ( 100

這樣做非常麻煩,也不聰明。學會程式設計的好處之一就是可以方便地處理重複工作。Python中的迴圈可以分為while迴圈和for迴圈兩種。

與if語句類似,while語句同樣首先判斷布林表示式,如果為真,那麼繼續執行迴圈體;如果為假,那麼跳出迴圈體。while迴圈的語法格式如下:

while 表示式:

迴圈體

使用while迴圈來完成從1到100的輸出任務:

  1. >>> n =  1     # 因為從1開始列印,所以先將n賦值為1  
  2. >>>  while  n <=  100 :    # 每次都判斷n的值是否小於等於100  
  3. ...      print (n)    # 列印n的值  
  4. ...     n = n +  1     # 每次將n的值增加1,以便列印2、3、4……  
  5. ...  
  6. 1  
  7. 2  
  8. 3  
  9. 4  
  10. …… 
  11. 98  
  12. 99  
  13. 100  

while迴圈總是不斷地判斷條件是否滿足,直到條件不滿足才跳出迴圈。利用這個特性,可以編寫一個“猜數字”的遊戲。先由一個人輸入一個數字(自然數),這個數作為謎底。再由另外一個人猜,如果猜的數字比謎底大,那麼列印“猜大了”; 如果猜的數字比謎底小,那麼列印“猜小了”;直到猜的數字與謎底相等為止,列印“恭喜,猜對了!”。程式碼示例如下:

  1. answer = int(input( '請輸入謎底數字:' )) 
  2. number = int(input( '請輸入您要猜的數字:' )) 
  3. while  number != answer:    # 如果number不等於answer,即猜錯了,那麼進入迴圈  
  4.      if  number > answer:    # 如果猜的數字大於謎底  
  5.          print ( '猜大了!'
  6.      else :    # 如果猜的數字小於謎底  
  7.          print ( '猜小了!'
  8.     number = int(input( '請繼續輸入您要猜的數字:' )) 
  9. print ( '恭喜,猜對了!' )    # 如果跳出迴圈,那麼說明猜對了  

建議將這個程式使用指令碼模式執行,輸入資料,測試執行結果:

  1. 請輸入謎底數字: 77  
  2. 請輸入您要猜的數字: 20  
  3. 猜小了! 
  4. 請繼續輸入您要猜的數字: 90  
  5. 猜大了! 
  6. 請繼續輸入您要猜的數字: 80  
  7. 猜大了! 
  8. 請繼續輸入您要猜的數字: 77  
  9. 恭喜,猜對了! 

2、小心死迴圈

死迴圈是指程式在流程控制中一直重複執行某一段程式碼,無法依靠自身的控制終止迴圈。初學者很容易不小心寫出死迴圈。例如,在前文使用while迴圈完成從1到100的輸出任務中,如果將最後一行程式碼“n = n + 1”刪掉,那麼該迴圈就變成了死迴圈。這是因為n的值不會增加,從而會一直滿足“n <= 100”的條件無法跳出迴圈。試著執行如下程式碼:

  1. >>> n =  1  
  2. >>>  while  n <  100
  3. ...      print (n) 
  4. ...     
  5. 1  
  6. 1  
  7. 1  
  8. 1  
  9. 1  
  10. 1  
  11. 1  
  12. 1  
  13. …… 

當敲下最後一個Enter鍵時,程式會在螢幕上不停地列印1,直到強制關閉程式視窗,或者按Ctrl+C鍵終止程式。死迴圈可能會使電腦崩潰或者造成其他與預期不符的後果,因此,在使用while迴圈時要格外小心,看看是否有能夠滿足條件跳出迴圈的“出口”。

需要指出的是,有些應用場景下需要使用死迴圈(例如,作業系統最外層是死迴圈,保證電腦一直執行),也就是說寫出死迴圈不一定是錯的,但應該僅當清楚自己在做什麼時,才寫死迴圈。

以上就是小編在這裡為大家介紹的 【Python基礎知識】Python中的while語句的相關內容,可能大家會擔心自己沒有基礎能不能學會,考慮到大家這個擔憂,小編在這裡為大家申請了一套價值 299元的Python的系列課程,只需要就可以免費領取,現在報名的話還有免費的一個月試學期,感興趣的小夥伴快來領取吧~

【Python基礎知識】Python中的while語句

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31543790/viewspace-2688925/,如需轉載,請註明出處,否則將追究法律責任。

相關文章