前言
成都創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比靈臺(tái)網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式靈臺(tái)網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋靈臺(tái)地區(qū)。費(fèi)用合理售后完善,十余年實(shí)體公司更值得信賴。任何語(yǔ)言都有循環(huán)語(yǔ)句,在Python里循環(huán)更是變化無(wú)窮,有基本的循環(huán),有循環(huán)else語(yǔ)句,引伸出來(lái)的還有迭代器、推導(dǎo)式,咱們先學(xué)習(xí)最簡(jiǎn)單的一種。
While循環(huán)
while 條件判斷語(yǔ)句:
子代碼1
子代碼2
子代碼3
…
子代碼N
主代碼1
while語(yǔ)句的格式與if類似,子代碼必須進(jìn)行縮進(jìn)4個(gè)空格,作用卻是大不相同。當(dāng)它執(zhí)行第一次循環(huán)時(shí),判斷條件是否成立,如果條件成立,就從子代碼1開(kāi)始執(zhí)行到子代碼N,然后程序會(huì)回到while語(yǔ)句再次判斷條件是否成立,如果成立就繼續(xù)從子代碼1開(kāi)始執(zhí)行,如果不成立就跳過(guò)子代碼段,系統(tǒng)從主代碼1開(kāi)始往后執(zhí)行。
話說(shuō)在North Kingdom北境國(guó)的北面夜王控制了塞外,曾經(jīng)春夏交織,現(xiàn)在每天雪花連綿,似乎進(jìn)入了無(wú)限循環(huán)狀態(tài)。
類似于永不停止的重復(fù)動(dòng)作即無(wú)限循環(huán),實(shí)現(xiàn)它需要在寫(xiě)條件判斷語(yǔ)句時(shí),直接寫(xiě)上永遠(yuǎn)為T(mén)rue的判斷結(jié)果,簡(jiǎn)單直接使用True,以實(shí)現(xiàn)了無(wú)窮循環(huán)的功能,如下面的程序所示:
>>> while True:
print('下雪')
下雪
下雪
下雪
下雪
下雪
下雪 (按下Ctrl+C來(lái)終止程序無(wú)窮運(yùn)行)
KeyboardInterrupt
>>>
身為北境守衛(wèi)者的我 - 中文名雪諾(英文名Snow)決定越過(guò)長(zhǎng)城北,解決掉夜王。國(guó)王Stannis請(qǐng)我在王宮500個(gè)最強(qiáng)壯的衛(wèi)兵中,挑選10人同行,由于時(shí)間有限不可能全部面試500人為了公平,于是我決定由電腦隨機(jī)挑出1個(gè)人,通過(guò)后即出隊(duì)入選,這樣重復(fù)多次直到10人選滿為止。
關(guān)于這個(gè)挑人程序,現(xiàn)在分析如下:
本程序從500人的隊(duì)伍里,隨機(jī)挑出,如果滿意就入選,不滿意就歸隊(duì)
import random #使用隨機(jī)數(shù)工具 volunteer = 500 while volunteer > 500-10: #當(dāng)剩下的人數(shù)大于490時(shí)才繼續(xù)面試 test = random.randint(1,volunteer) if(input('還剩下'+ str(volunteer)+'人,這是隨機(jī)挑選的第'+str(test)+'號(hào),您滿意么(y/n)?') == 'y'): volunteer -= 1 #入選后隊(duì)伍就會(huì)少1人 print('您已經(jīng)選足了10個(gè)人!')