Python While循環(huán)語(yǔ)句實(shí)例演示及原理解析
這篇文章主要介紹了Python While循環(huán)語(yǔ)句實(shí)例演示及原理解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
Python 編程中 while 語(yǔ)句用于循環(huán)執(zhí)行程序,即在某條件下,循環(huán)執(zhí)行某段程序,以處理需要重復(fù)處理的相同任務(wù)。其基本形式為:
while 判斷條件:
執(zhí)行語(yǔ)句……
執(zhí)行語(yǔ)句可以是單個(gè)語(yǔ)句或語(yǔ)句塊。判斷條件可以是任何表達(dá)式,任何非零、或非空(null)的值均為true。
當(dāng)判斷條件假false時(shí),循環(huán)結(jié)束。
執(zhí)行流程圖如下:
Python while 語(yǔ)句執(zhí)行過程
實(shí)例:
#!/usr/bin/python count = 0 while (count < 9): print 'The count is:', count count = count + 1 print "Good bye!"
以上代碼執(zhí)行輸出結(jié)果:
The count is: 0 The count is: 1 The count is: 2 The count is: 3 The count is: 4 The count is: 5 The count is: 6 The count is: 7 The count is: 8 Good bye!
while 語(yǔ)句時(shí)還有另外兩個(gè)重要的命令 continue,break 來跳過循環(huán),continue 用于跳過該次循環(huán),break 則是用于退出循環(huán),此外"判斷條件"還可以是個(gè)常值,表示循環(huán)必定成立,具體用法如下:
# continue 和 break 用法 i = 1 while i < 10: i += 1 if i%2 > 0: # 非雙數(shù)時(shí)跳過輸出 continue print i # 輸出雙數(shù)2、4、6、8、10 i = 1 while 1: # 循環(huán)條件為1必定成立 print i # 輸出1~10 i += 1 if i > 10: # 當(dāng)i大于10時(shí)跳出循環(huán) break
無限循環(huán)
如果條件判斷語(yǔ)句永遠(yuǎn)為 true,循環(huán)將會(huì)無限的執(zhí)行下去,如下實(shí)例:
#coding=utf-8 #!/usr/bin/python var = 1 while var == 1 : # 該條件永遠(yuǎn)為true,循環(huán)將無限執(zhí)行下去 num = raw_input("Enter a number :") print "You entered: ", num print "Good bye!"
以上實(shí)例輸出結(jié)果:
Enter a number :20 You entered: 20 Enter a number :29 You entered: 29 Enter a number :3 You entered: 3 Enter a number between :Traceback (most recent call last): File "test.py", line 5, in <module> num = raw_input("Enter a number :") KeyboardInterrupt
注意:以上的無限循環(huán)你可以使用 CTRL+C 來中斷循環(huán)。
循環(huán)使用 else 語(yǔ)句
在 python 中,for … else 表示這樣的意思,for 中的語(yǔ)句和普通的沒有區(qū)別,else 中的語(yǔ)句會(huì)在循環(huán)正常執(zhí)行完(即 for 不是通過 break 跳出而中斷的)的情況下執(zhí)行,while … else 也是一樣。
#!/usr/bin/python count = 0 while count < 5: print count, " is less than 5" count = count + 1 else: print count, " is not less than 5"
以上實(shí)例輸出結(jié)果為:
0 is less than 5 1 is less than 5 2 is less than 5 3 is less than 5 4 is less than 5 5 is not less than 5
簡(jiǎn)單語(yǔ)句組
類似if語(yǔ)句的語(yǔ)法,如果你的while循環(huán)體中只有一條語(yǔ)句,你可以將該語(yǔ)句與while寫在同一行中, 如下所示:
#!/usr/bin/python flag = 1 while (flag): print 'Given flag is really true!' print "Good bye!"
注意:以上的無限循環(huán)你可以使用 CTRL+C 來中斷循環(huán)。
While循環(huán)語(yǔ)句實(shí)例
猜拳小游戲
#!/usr/bin/python # -*- coding: UTF-8 -*- import random while 1: s = int(random.randint(1, 3)) if s == 1: ind = "石頭" elif s == 2: ind = "剪子" elif s == 3: ind = "布" m = raw_input('輸入 石頭、剪子、布,輸入"end"結(jié)束游戲:') blist = ['石頭', "剪子", "布"] if (m not in blist) and (m != 'end'): print "輸入錯(cuò)誤,請(qǐng)重新輸入!" elif (m not in blist) and (m == 'end'): print "\n游戲退出中..." break elif m == ind : print "電腦出了: " + ind + ",平局!" elif (m == '石頭' and ind =='剪子') or (m == '剪子' and ind =='布') or (m == '布' and ind =='石頭'): print "電腦出了: " + ind +",你贏了!" elif (m == '石頭' and ind =='布') or (m == '剪子' and ind =='石頭') or (m == '布' and ind =='剪子'): print "電腦出了: " + ind +",你輸了!"
以上實(shí)例輸出結(jié)果為:
輸入 石頭、剪子、布,輸入"end"結(jié)束游戲:石頭 電腦出了: 石頭,平局! 輸入 石頭、剪子、布,輸入"end"結(jié)束游戲:石頭 電腦出了: 剪子,你贏了! 輸入 石頭、剪子、布,輸入"end"結(jié)束游戲:
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python HTMLParser模塊解析html獲取url實(shí)例
這篇文章主要介紹了Python HTMLParser模塊解析html獲取url實(shí)例,HTMLParser是python用來解析html的模塊,HTMLParser采用的是一種事件驅(qū)動(dòng)的模式,需要的朋友可以參考下2015-04-04python中print的不換行即時(shí)輸出的快速解決方法
下面小編就為大家?guī)硪黄猵ython中print的不換行即時(shí)輸出的快速解決方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考2016-07-07LangChain簡(jiǎn)化ChatGPT工程復(fù)雜度使用詳解
這篇文章主要為大家介紹了LangChain簡(jiǎn)化ChatGPT工程復(fù)雜度使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03利用python設(shè)計(jì)圖像加密技術(shù)(Arnold算法)
這篇文章主要介紹了利用python設(shè)計(jì)圖像加密技術(shù)(Arnold算法),本文將借助Arnold置亂法,講解如何用python從頭至尾設(shè)計(jì)出一套圖像加密算法,需要的小伙伴可以才參考一下2022-03-03Django項(xiàng)目如何正確配置日志(logging)
本文將教你如何在Django項(xiàng)目中正確配置日志(logging),讓Django生成log日志文件,并在程序運(yùn)行發(fā)生error級(jí)別故障時(shí)通知管理員。2021-04-04