【Python基礎知識】Python中的while語句
很多初學Python的小夥伴不知道該從何開始學起,其實零基礎學習的話可以先學習一些Python基礎知識,等基礎打牢之後再去接觸更加深入的技術,接下來小編就為大家簡單介紹一下有關於 Python中while語句的內容,希望對大家的學習有幫助。
1、while迴圈語句
迭代(iteration)意味著反覆執行相同的程式碼塊。實現迭代的程式設計結構稱為迴圈(loop)。
假設有一項任務,要在螢幕上輸出從1到100的數字。僅僅使用之前討論過的知識,可能會寫出如下程式碼:
- print ( 1 )
- print ( 2 )
- print ( 3 )
- # 此處省略print(4) ~ print(99)
- print ( 100 )
這樣做非常麻煩,也不聰明。學會程式設計的好處之一就是可以方便地處理重複工作。Python中的迴圈可以分為while迴圈和for迴圈兩種。
與if語句類似,while語句同樣首先判斷布林表示式,如果為真,那麼繼續執行迴圈體;如果為假,那麼跳出迴圈體。while迴圈的語法格式如下:
while 表示式:
迴圈體
使用while迴圈來完成從1到100的輸出任務:
- >>> n = 1 # 因為從1開始列印,所以先將n賦值為1
- >>> while n <= 100 : # 每次都判斷n的值是否小於等於100
- ... print (n) # 列印n的值
- ... n = n + 1 # 每次將n的值增加1,以便列印2、3、4……
- ...
- 1
- 2
- 3
- 4
- ……
- 98
- 99
- 100
while迴圈總是不斷地判斷條件是否滿足,直到條件不滿足才跳出迴圈。利用這個特性,可以編寫一個“猜數字”的遊戲。先由一個人輸入一個數字(自然數),這個數作為謎底。再由另外一個人猜,如果猜的數字比謎底大,那麼列印“猜大了”; 如果猜的數字比謎底小,那麼列印“猜小了”;直到猜的數字與謎底相等為止,列印“恭喜,猜對了!”。程式碼示例如下:
- answer = int(input( '請輸入謎底數字:' ))
- number = int(input( '請輸入您要猜的數字:' ))
- while number != answer: # 如果number不等於answer,即猜錯了,那麼進入迴圈
- if number > answer: # 如果猜的數字大於謎底
- print ( '猜大了!' )
- else : # 如果猜的數字小於謎底
- print ( '猜小了!' )
- number = int(input( '請繼續輸入您要猜的數字:' ))
- print ( '恭喜,猜對了!' ) # 如果跳出迴圈,那麼說明猜對了
建議將這個程式使用指令碼模式執行,輸入資料,測試執行結果:
- 請輸入謎底數字: 77
- 請輸入您要猜的數字: 20
- 猜小了!
- 請繼續輸入您要猜的數字: 90
- 猜大了!
- 請繼續輸入您要猜的數字: 80
- 猜大了!
- 請繼續輸入您要猜的數字: 77
- 恭喜,猜對了!
2、小心死迴圈
死迴圈是指程式在流程控制中一直重複執行某一段程式碼,無法依靠自身的控制終止迴圈。初學者很容易不小心寫出死迴圈。例如,在前文使用while迴圈完成從1到100的輸出任務中,如果將最後一行程式碼“n = n + 1”刪掉,那麼該迴圈就變成了死迴圈。這是因為n的值不會增加,從而會一直滿足“n <= 100”的條件無法跳出迴圈。試著執行如下程式碼:
- >>> n = 1
- >>> while n < 100 :
- ... print (n)
- ...
- 1
- 1
- 1
- 1
- 1
- 1
- 1
- 1
- ……
當敲下最後一個Enter鍵時,程式會在螢幕上不停地列印1,直到強制關閉程式視窗,或者按Ctrl+C鍵終止程式。死迴圈可能會使電腦崩潰或者造成其他與預期不符的後果,因此,在使用while迴圈時要格外小心,看看是否有能夠滿足條件跳出迴圈的“出口”。
需要指出的是,有些應用場景下需要使用死迴圈(例如,作業系統最外層是死迴圈,保證電腦一直執行),也就是說寫出死迴圈不一定是錯的,但應該僅當清楚自己在做什麼時,才寫死迴圈。
以上就是小編在這裡為大家介紹的 【Python基礎知識】Python中的while語句的相關內容,可能大家會擔心自己沒有基礎能不能學會,考慮到大家這個擔憂,小編在這裡為大家申請了一套價值 299元的Python的系列課程,只需要就可以免費領取,現在報名的話還有免費的一個月試學期,感興趣的小夥伴快來領取吧~
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31543790/viewspace-2688925/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python基礎-While迴圈語句PythonWhile
- Python基礎入門知識點——if 語句簡介Python
- Python基礎知識:什麼是非區域性語句?Python
- Python 中的for,if-else和while語句PythonWhile
- Java基礎 迴圈語句 for while do.....while語句JavaWhile
- Python基礎-if,for語句Python
- python基礎必學的語法知識Python
- python基礎知識縱覽(中)Python
- python 基礎知識Python
- python基礎知識Python
- python基礎語法—語句Python
- python 中的 for-else 和 while-else 語句PythonWhile
- 【Python基礎知識】Python中的邏輯運算子Python
- [shell基礎]——if/for/while/until/case 語句While
- python基礎語法知識點總結Python
- Python基礎知識整理Python
- Python基礎知識1Python
- Python基礎知識分享Python
- Python 基礎知識教程Python
- Python基礎入門知識點——Python中的異常Python
- Python知識體系-Python2基礎知識Python
- 【Python基礎】for迴圈語句Python
- Python基礎知識點梳理Python
- Python——基礎知識細節Python
- Python基礎知識架構Python架構
- Python基礎知識之字典Python
- Python基礎知識之集合Python
- Python基礎知識之二Python
- python基礎語句小練習Python
- Python基礎學習【4】-if 語句Python
- mysql資料庫sql語句基礎知識MySql資料庫
- 基礎的python知識2 (變數)Python變數
- Python類的基礎入門知識Python
- python基礎 (3)if 和 while的使用PythonWhile
- Python入門必知的知識點!Python基礎入門Python
- Python語言最常見的8個基礎語句!Python
- Python基礎知識入門(二)Python
- Python入門基礎知識(二)Python