版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
Python編程基礎(chǔ)06-2月-241循環(huán)目錄條件分支語句2
嵌套循環(huán)3列表解析4if布爾表達(dá)式1:
分支注意,每個條件后面要使用冒號(:),表示接下來是滿足條件后要執(zhí)行的語句塊。使用縮進(jìn)來劃分語句塊,相同縮進(jìn)數(shù)的語句在一起組成一個語句塊。if語句的基本結(jié)構(gòu)if語句實現(xiàn)條件分支,需要用到布爾表達(dá)式,格式如下。標(biāo)準(zhǔn)值False和None,數(shù)字0和所有空序列都為False,其余的單個對象都為True。在表達(dá)式運算的過程中,True會視為數(shù)值1,F(xiàn)alse會視為數(shù)值0,這與其他編程語言是相似的。邏輯表達(dá)式是布爾表達(dá)式的一種,邏輯表達(dá)式指的帶邏輯操作符或比較操作符(如>,==)的表達(dá)式。if語句的基本結(jié)構(gòu)布爾表達(dá)式滿足條件返回真>>>score=91>>>score>=90&score<=100True程序只對成績進(jìn)行了一次判斷,條件滿足的時候,則返回真,打印的結(jié)果就是“本次考試:成績等級為A”。>>>score=91>>>ifscore>=90&score<=100:…print('本次考試,成績等級為:A')本次考試,成績等級為:Aif語句的基本結(jié)構(gòu)示例if布爾表達(dá)式1:
分支一elif布爾表達(dá)式2:
分支二else:
分支三多路分支if語句設(shè)置多路分支的一般格式如下。程序會先計算第一個布爾表達(dá)式,如果結(jié)果為真,則執(zhí)行第一個分支的所有語句;如果為假,則計算第二個布爾表達(dá)式;如果第二個布爾表達(dá)式結(jié)果為真,則執(zhí)行第二個分支的所有語句;如果結(jié)果仍然為假,則執(zhí)行第三個分支的所有語句。如果只有兩個分支,那么不需要elif,直接寫else即可,如果有更多的分支,那么需要添加更多的elif語句。Python中沒有switch和case語句,多路分支只能通過if-elif-else來實現(xiàn)。注意整個分支結(jié)構(gòu)中是有嚴(yán)格的退格縮進(jìn)要求的。多路分支描述>>>score=59>>>ifscore<60:...print('考試不及格')>>>else:...print('考試及格')考試不及格多路分支示例1循環(huán)目錄條件分支語句2
嵌套循環(huán)3列表解析4到目前為止的程序都是一條一條語句順序進(jìn)行,如果要讓程序重復(fù)地做一件事情,就只能重復(fù)地寫相同的代碼,操作比較繁瑣。此時需要掌握一個重要的方法——循環(huán)。使用循環(huán)在一定情況下可以使你的代碼運行效率更高。循環(huán)for循環(huán)在Python中是一個通用的序列迭代器,可以遍歷任何有序的序列,如字符串、列表、元組等。程序語言的學(xué)習(xí)是一個循環(huán)的過程,與其他學(xué)科不同,程序語言的知識是相互緊扣的。Python中的for語句接受可迭代對象,如序列和迭代器作為其參數(shù),每次循環(huán)調(diào)取其中一個元素。Python的for循環(huán)看上去像偽代碼,非常簡潔。for循環(huán)for循環(huán)示意圖for循環(huán)對字符串,列表的遍歷>>>forain['e','f','g']:... print(a)efg>>>forain'string':... print(a)stringfor循環(huán)示例while布爾表達(dá)式: 程序段while循環(huán)while循環(huán)也是最常用的循環(huán)之一,Python編程中while語句用于循環(huán)執(zhí)行程序,即在某條件下,循環(huán)執(zhí)行某段程序,以處理需要重復(fù)處理的相同任務(wù)。格式如下。只要布爾表達(dá)式為真,那么程序段將會被執(zhí)行,執(zhí)行完畢后,再次計算布爾表達(dá)式,如果結(jié)果仍然為真,那么再次執(zhí)行程序段,直至布爾表達(dá)式為假。while循環(huán)示意圖當(dāng)s的值小于等于一的時候打印出s,這里的結(jié)果就是循環(huán)到1,,一共打印了兩次計數(shù)。>>>s=0>>>while(s<=1):... print('計數(shù):',s)... s=s+1計數(shù):0計數(shù):1當(dāng)條件判斷語句即布爾表達(dá)式一直為真時,就會進(jìn)行無限次循環(huán),無限循環(huán)可以使用CTRL+C來中斷循環(huán)。while循環(huán)示例Python要像C語言的格式進(jìn)行循環(huán),實際上需要的是一個數(shù)字序列,range函數(shù)能夠快速構(gòu)造一個數(shù)字序列。例如range(5)或range(0,5)即為序列0,1,2,3,4。注意這里包括0,但不包括5。Python中foriinrange(5)的效果和C中for(i=0;i<5;i++)的效果是一樣的。range(a,b)能夠返回列表[a,a+1,…,b-1](注意不包含b),這樣for循環(huán)就可以從任意起點開始,任意終點結(jié)束。range函數(shù)經(jīng)常和len函數(shù)一起用于遍歷整個序列。len函數(shù)能夠返回一個序列的長度,foriinrange(len(L))能夠迭代整個列表L的元素的索引。直接使用for循環(huán)似乎也可以實現(xiàn)這個目的,但是直接使用for循環(huán)難以對序列進(jìn)行修改(因為每次迭代調(diào)取的元素并不是序列元素的引用),而通過range函數(shù)和len函數(shù)可以快速通過索引訪問序列并對其進(jìn)行修改。range函數(shù)>>>foriinrange(0,5):... print(i)#result:0,1,2,3,4>>>foriinrange(0,6,2):... print(i)0,2,4#相鄰元素的間隔為3range函數(shù)示例#直接使用for循環(huán)難以改變序列元素>>>L=[1,2,3]>>>forainL:... a+=1#a不是引用,L中對應(yīng)的元素沒有發(fā)生改變>>>print(L)[1,2,3]#range與len函數(shù)遍歷序列并修改元素>>>foriinrange(len(L)):... L[i]+=1#通過索引訪問>>>print(L)[2,3,4]range函數(shù)break語句的作用,就像在C語言中,打破了最小封閉for或while循環(huán)。break語句用來終止循環(huán)語句,即循環(huán)條件沒有False條件或者序列還沒被完全遞歸完,也會停止執(zhí)行循環(huán)語句。break語句用在while和for循環(huán)中。如果使用嵌套循環(huán),break語句將停止執(zhí)行最深層的循環(huán),并開始執(zhí)行下一行代碼。ontinue語句的作用是跳出本次循環(huán),而break跳出整個循環(huán)。continue語句用來告訴Python跳過當(dāng)前循環(huán)的剩余語句,然后繼續(xù)進(jìn)行下一輪循環(huán)。pass是空語句,作用是為了保持程序結(jié)構(gòu)的完整性。pass不做任何事情,一般用做占位語句。pass語句是為了保持程序結(jié)構(gòu)的完整性。break、continue、pass語句1循環(huán)目錄條件分支語句2
嵌套循環(huán)3列表解析4嵌套循環(huán),顧名思義,就是在一個循環(huán)中嵌入另一個循環(huán)。而Python語言是允許在一個循環(huán)體里面嵌入另一個循環(huán)的??梢栽趂or循環(huán)中再嵌入一個for循環(huán),也可以在for循環(huán)中嵌入while循環(huán),還可以在while循環(huán)中嵌入for循環(huán),當(dāng)然還有在while循環(huán)中嵌入while循環(huán)。嵌套循環(huán)>>>num=zeros(shape=(3,3))>>>foriinrange(0,3):...forjinrange(0,3):...num[i,j]=i*j>>>numarray([[0.,0.,0.],[0.,1.,2.],[0.,2.,4.]])嵌套循環(huán)示例:利用嵌套循環(huán)對數(shù)組num里面的值進(jìn)行了修改,重新賦值為i*j示例:for循環(huán)和if條件語句去對數(shù)據(jù)進(jìn)行判斷,判斷是否為質(zhì)數(shù)并打印出來>>>forxinrange(10,15):#迭代10到15之間的數(shù)字 foriinrange(2,x):#根據(jù)因子迭代 ifx%i==0:#確定第一個因子 j=x/i#計算第二個因子 print('%d等于%d*%d'%(x,i,j))break#跳出當(dāng)前循環(huán) else:#循環(huán)的else部分 print(x,'是一個質(zhì)數(shù)') break#跳出當(dāng)前循環(huán)組合條件與循環(huán)在循環(huán)中放入條件語句,這樣才可以使得循環(huán)可以做更多的事情。10等于2*511是一個質(zhì)數(shù)12等于2*613是一個質(zhì)數(shù)14等于2*7組合條件與循環(huán)示例結(jié)果1循環(huán)目錄條件分支語句2
嵌套循環(huán)3列表解析4如果給定一個list或tuple,可以通過for循環(huán)來遍歷這個list或tuple,這種遍歷稱之為迭代(Iteration)。在Python中,迭代是通過forin來完成的。Python的for循環(huán)不僅可以用在list或tuple上,還可以作用在其他可迭代對象上。list這種數(shù)據(jù)類型雖然有下標(biāo),但很多其他數(shù)據(jù)類型是沒有下標(biāo)的,但是,只要是可迭代對象,無論有無下標(biāo),都可以迭代,比如dict就可以迭代。字符串也是可迭代對象。多變量迭代字典dict的迭代展示>>>d={'a':1,'b':2,'c':3}>>>forkeyind:...print(key)acb因為dict的存儲不是按照list的方式順序排列,所以,迭代出的結(jié)果順序很可能不一樣。多變量迭代示例同時引用兩個變量>>>forx,yin[(1,1),(2,4),(3,9)]:>>>print(x,y)112439多變量迭代在Python中for循環(huán)同時引用兩個變量也很常見列表解析是一種高效創(chuàng)建新列表的方式,它可以用來動態(tài)地創(chuàng)建列表。列表解析是Python迭代機(jī)制的一種應(yīng)用,它常用于實現(xiàn)創(chuàng)建新的列表,因此用在[]中。列表解析也可以稱之為列表推導(dǎo)式。列表解析式完全可以替換內(nèi)建的map函數(shù)以及l(fā)ambda,而且效率更高。列表解析式不僅可以運用到嵌套循環(huán)中,還可以在其中增加條件判斷語句。列表解析式實現(xiàn)效率更高,且代碼更加簡潔。列表解析>>>map(lambdax:x**3,range(6))#計算x的三次冪[0,1,8,27,64,125]>>>[x**3forxinrange(6)][0,1,8,27,64,125]>>>seq=[1,2,3,4,5,6,7,8]#當(dāng)x%2為1時取值>>>filter(lambdax:x%2,seq)[1,3,5,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度新型環(huán)保技術(shù)合作承諾合同范本4篇
- 2025版智能社區(qū)門牌制作及管理系統(tǒng)集成合同4篇
- 二零二五版智能科技專利轉(zhuǎn)讓合同補(bǔ)充協(xié)議3篇
- 數(shù)據(jù)化辦公實驗室數(shù)據(jù)的處理與應(yīng)用
- 2025年度個人教育培訓(xùn)分期付款合同8篇
- 2025版協(xié)議書范本合同(環(huán)保產(chǎn)業(yè))2篇
- 長安大學(xué)《大學(xué)外語聽說》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024鐵路電氣化區(qū)段安全使用合同3篇
- 家用醫(yī)療設(shè)備為殘疾人提供個性化的康復(fù)方案
- 現(xiàn)代家庭的沖突解決與情緒管理策略
- 2025年度杭州市固廢處理與資源化利用合同3篇
- 2024年安徽省公務(wù)員錄用考試《行測》真題及答案解析
- 部編版二年級下冊《道德與法治》教案及反思(更新)
- 充電樁項目運營方案
- 退休人員出國探親申請書
- 高中物理競賽真題分類匯編 4 光學(xué) (學(xué)生版+解析版50題)
- 西方經(jīng)濟(jì)學(xué)-高鴻業(yè)-筆記
- 幼兒園美術(shù)教育研究策略國內(nèi)外
- 2024屆河南省五市高三第一次聯(lián)考英語試題及答案
- 孕婦學(xué)校品管圈課件
- 《愿望的實現(xiàn)》交流ppt課件2
評論
0/150
提交評論