您好,登錄后才能下訂單哦!
很多初學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
- ……
當敲下最后一個回車鍵時,程序會在屏幕上不停地打印1,直到強制關閉程序窗口,或者按Ctrl+C鍵終止程序。死循環可能會使電腦崩潰或者造成其他與預期不符的后果,因此,在使用while循環時要格外小心,看看是否有能夠滿足條件跳出循環的“出口”。
需要指出的是,有些應用場景下需要使用死循環(例如,操作系統最外層是死循環,保證電腦一直運行),也就是說寫出死循環不一定是錯的,但應該僅當清楚自己在做什么時,才寫死循環。
以上就是小編在這里為大家介紹的 【Python基礎知識】Python中的while語句的相關內容,可能大家會擔心自己沒有基礎能不能學會,考慮到大家這個擔憂,小編在這里為大家申請了一套價值 299元的Python的系列課程,只需要就可以免費領取,現在報名的話還有免費的一個月試學期,感興趣的小伙伴快來領取吧~
http://shenzhen.offcn.com/
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。