第4章 Python常用語(yǔ)句-2-循環(huán)語(yǔ)句_第1頁(yè)
第4章 Python常用語(yǔ)句-2-循環(huán)語(yǔ)句_第2頁(yè)
第4章 Python常用語(yǔ)句-2-循環(huán)語(yǔ)句_第3頁(yè)
第4章 Python常用語(yǔ)句-2-循環(huán)語(yǔ)句_第4頁(yè)
第4章 Python常用語(yǔ)句-2-循環(huán)語(yǔ)句_第5頁(yè)
已閱讀5頁(yè),還剩14頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

2判斷語(yǔ)句Python其他語(yǔ)句目錄循環(huán)語(yǔ)句134.2

循環(huán)語(yǔ)句循環(huán)結(jié)構(gòu)是結(jié)構(gòu)化程序設(shè)計(jì)中很重要的結(jié)構(gòu),它和順序結(jié)構(gòu)、選擇結(jié)構(gòu)都是各種復(fù)雜程序的基本結(jié)構(gòu)。循環(huán)結(jié)構(gòu)的特點(diǎn)是:在給定條件成立的情況下,反復(fù)執(zhí)行某程序段,直到條件不成立為止。給定的條件成為循環(huán)條件,反復(fù)執(zhí)行的程序段成為循環(huán)體。現(xiàn)實(shí)生活中也有很多循環(huán)的場(chǎng)景,例如,路燈在每個(gè)晚上都會(huì)打開(kāi),白天關(guān)閉。Python編程中,while語(yǔ)句和for語(yǔ)句都是用于循環(huán)執(zhí)行程序。while循環(huán)4.2

循環(huán)語(yǔ)句while循環(huán)語(yǔ)句的基本格式如下:whilecondition: statement_block當(dāng)判斷條件condition為“假”,則不執(zhí)行循環(huán)體語(yǔ)句,退出循環(huán),轉(zhuǎn)到循環(huán)體外的下一條語(yǔ)句執(zhí)行;當(dāng)判斷條件condition為“真”,執(zhí)行循環(huán)體語(yǔ)句statemet_block之后,再次計(jì)算condition的值,重復(fù)上述過(guò)程,直到判斷條件為“假”時(shí),退出循環(huán)。其程序流程如圖4-6所示。while循環(huán)的特點(diǎn)是:先判斷表達(dá)式,后執(zhí)行語(yǔ)句。圖4-6while循環(huán)while循環(huán)4.2

循環(huán)語(yǔ)句例4-7while循環(huán)對(duì)用戶輸入的數(shù)據(jù)求和,直到輸入數(shù)據(jù)等于0時(shí),結(jié)束循環(huán)。a=1sum=0while(a!=0):a=int(input("請(qǐng)輸入a的值:"))sum+=aprint("總和為:%s"%sum)運(yùn)行結(jié)果:請(qǐng)輸入a的值:3總和為:3請(qǐng)輸入a的值:3總和為:6請(qǐng)輸入a的值:6總和為:12請(qǐng)輸入a的值:0總和為:12for循環(huán)4.2

循環(huán)語(yǔ)句Pythonfor循環(huán)可以遍歷任何序列的項(xiàng)目,如一個(gè)列表或者一個(gè)字符串。for循環(huán)的一般格式如下:foriterating_varinsequence: statement_block例4-8for循環(huán):遍歷列表,輸出列表中的數(shù)據(jù)fruit=["apple","banana","peach"]#設(shè)置一個(gè)列表里面存放3個(gè)元素foriinfruit:#for循壞一個(gè)變量i,i屬于列表a print(i)#所以依次打印出a里面的變量for循環(huán)4.2

循環(huán)語(yǔ)句運(yùn)行結(jié)果:applebananapeach4.2

循環(huán)語(yǔ)句for循環(huán)例4-9for循環(huán):遍歷字符串forletterin'Python': print('當(dāng)前字母:',letter)運(yùn)行結(jié)果:當(dāng)前字母:P當(dāng)前字母:y當(dāng)前字母:t當(dāng)前字母:h當(dāng)前字母:o當(dāng)前字母:n4.2

循環(huán)語(yǔ)句for循環(huán)如果想要更方便的控制for循環(huán),Python提供了一個(gè)內(nèi)置range函數(shù),range函數(shù)可以生成一個(gè)數(shù)字序列。range函數(shù)在for循環(huán)中使用的一般格式如下: foriterating_varinrange(start,end) statement_block例4-10range函數(shù)在for循環(huán)中使用foriinrange(4,8): print(i)4.2

循環(huán)語(yǔ)句for循環(huán)運(yùn)行結(jié)果:45674.2

循環(huán)語(yǔ)句循環(huán)嵌套循環(huán)嵌套是指在一個(gè)循環(huán)語(yǔ)句的循環(huán)體中又包含循環(huán)語(yǔ)句,該循環(huán)語(yǔ)句可以是for循環(huán)也可以是while循環(huán),各種循環(huán)語(yǔ)句都可以互相嵌套。下面while嵌套的語(yǔ)法格式示例:whilecondition1: statement_block1 whilecondition2: statement_block1 …..(省略)…..循環(huán)還可以多層嵌套,稱為多重循環(huán)。在嵌套循環(huán)結(jié)構(gòu)中,內(nèi)循環(huán)語(yǔ)句是外循環(huán)語(yǔ)句循環(huán)體的一個(gè)語(yǔ)句,外循環(huán)每執(zhí)行一次循環(huán),內(nèi)循環(huán)語(yǔ)句要完成全部循環(huán)。如果外循環(huán)的循環(huán)次數(shù)為m,內(nèi)循環(huán)的循環(huán)次數(shù)為n,那么整個(gè)循環(huán)結(jié)束,內(nèi)循環(huán)的循環(huán)體語(yǔ)句被執(zhí)行了m*n次。4.2

循環(huán)語(yǔ)句循環(huán)嵌套例4-11循環(huán)嵌套i=1whilei<=3:print("外層循環(huán)輸出i的值:%s"%i)i+=1j=1whilej<=2:print("內(nèi)層循環(huán)輸出j的值:%s"%j)j+=1循環(huán)嵌套4.2

循環(huán)語(yǔ)句運(yùn)行結(jié)果:外層循環(huán)輸出的i值:1內(nèi)層循環(huán)輸出j的值:1內(nèi)層循環(huán)輸出j的值:2外層循環(huán)輸出的i值:2內(nèi)層循環(huán)輸出j的值:1內(nèi)層循環(huán)輸出j的值:2外層循環(huán)輸出的i值:3內(nèi)層循環(huán)輸出j的值:1內(nèi)層循環(huán)輸出j的值:2由例題可以看出嵌套循環(huán)的執(zhí)行過(guò)程,外層循環(huán)體語(yǔ)句執(zhí)行了3次,而內(nèi)層循環(huán)體語(yǔ)句執(zhí)行了2*3=6次。for循環(huán)案例—顯示素?cái)?shù)4.2

循環(huán)語(yǔ)句什么是素?cái)?shù):素?cái)?shù)定義為在大于1的自然數(shù)中,除了1和它本身以外不再有其他因數(shù)。素?cái)?shù)一般被稱為質(zhì)數(shù)。例4-11輸出1-100之間的所有素?cái)?shù)。foriinrange(2,101):#for循壞i屬于2-101,所以循壞出2-100的整數(shù)

fg=0#設(shè)置一個(gè)變量fg等于0

forjinrange(2,i-1):#for循壞jj屬于i-1

ifi%j==0:#%是求余數(shù),不是除法。如果i%j余數(shù)為0,則為true

fg=1#然后執(zhí)行fg=1,給fg賦值一個(gè)1

break#break退出循壞

iffg==0:#條件判斷fg==0,為true

print(i)#輸出i,i就是100以內(nèi)的素?cái)?shù).for循環(huán)案例—顯示素?cái)?shù)4.2

循環(huán)語(yǔ)句通過(guò)兩個(gè)for循環(huán)嵌套,第一個(gè)for循環(huán)遍歷2-101之間的所有數(shù),第二個(gè)for循環(huán)判斷某個(gè)數(shù)i能否被2到i-1之間的任意數(shù)整除,如果能夠被整除則跳出內(nèi)層for循環(huán),并設(shè)置變量fg等于1;如果不能被整除,則輸出改數(shù)字,直到輸出1-100的所有素?cái)?shù)。運(yùn)行結(jié)果:235…..(省略)……8997while嵌套案例——打印圖形4.2

循環(huán)語(yǔ)句使用while嵌套循環(huán),打印如下圖形*************************分析上面的圖形,第1排打印1個(gè)符號(hào),第二排打印2個(gè)符號(hào),以此類推到第6排是前4排上下翻轉(zhuǎn)過(guò)來(lái)的圖形。所以我們可以用兩個(gè)while循環(huán)嵌套來(lái)實(shí)現(xiàn)。while嵌套案例——打印圖形4.2

循環(huán)語(yǔ)句例4-12打印圖形i=1whilei<=5:j=1whilej<=i:j+=1print("*",end="")i+=1print("\n")i=4whilei>=1:j=1whilej<=i:print("*",end="")j+=1i-=1print("\n")while嵌套案例—百雞問(wèn)題4.2

循環(huán)語(yǔ)句例4-13百雞問(wèn)題。已知公雞每只5元,母雞每只3元,小雞每3只1元?,F(xiàn)在要用100元買100只雞,問(wèn)公雞、母雞和小雞分別多少只?這個(gè)問(wèn)題我們可以采用“窮舉法”來(lái)求解。窮舉法就是把問(wèn)題的各種可能的組合全部羅列出來(lái),再判斷每種可能的組合是否滿足給定的條件,若滿足給定條件,就是問(wèn)題的解。while嵌套案例—百雞問(wèn)題4.2

循環(huán)語(yǔ)句假設(shè)使用變量a,b和c分別表示公雞、母雞和小雞的數(shù)目。當(dāng)去頂a和b之后,z=100-a-b。根據(jù)題意可知,公雞數(shù)目a的取值范圍是:0~20,母雞數(shù)據(jù)b的取值范圍是:0~33。所以我們可以使用外循環(huán)控制a的取值變化,內(nèi)循環(huán)控制b的取值變化,在內(nèi)循環(huán)體對(duì)每個(gè)組合a、b和c的值判斷是否滿足條件:5*a+3*b+c/3=100,若滿足條件就輸出a、b和c。具體代碼如下:a=0whilea<=20:b=0whileb<=33:c=

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論