Python程序設(shè)計-教案-單元三 流程控制_第1頁
Python程序設(shè)計-教案-單元三 流程控制_第2頁
Python程序設(shè)計-教案-單元三 流程控制_第3頁
Python程序設(shè)計-教案-單元三 流程控制_第4頁
Python程序設(shè)計-教案-單元三 流程控制_第5頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

《Python程序設(shè)計》教案單元三流程控制

教學(xué)內(nèi)容描述“猜數(shù)字”游戲流程教學(xué)目標(biāo)素質(zhì)目標(biāo):培養(yǎng)學(xué)生分析問題,提前規(guī)劃的良好習(xí)慣。 知識目標(biāo):了解Python的流程控制。能力目標(biāo):能夠通過程序代碼畫出對應(yīng)流程圖,通過流程圖寫出相應(yīng)代碼。教學(xué)重難點(diǎn)教學(xué)重點(diǎn):程序流程圖的基本符號教學(xué)難點(diǎn):程序流程圖的畫法教學(xué)方法案例分析法、問答法、討論法、講授法、實訓(xùn)法教學(xué)用具電腦、投影儀、多媒體課件、教材教學(xué)設(shè)計教學(xué)過程主要教學(xué)內(nèi)容及步驟設(shè)計意圖課前任務(wù)【教師】布置課前任務(wù),提醒同學(xué)通過學(xué)習(xí)軟件,完成課前任務(wù)請大家搜集信息,了解“猜數(shù)字”游戲的規(guī)則是什么,預(yù)習(xí)本任務(wù)需要的相關(guān)知識點(diǎn)。【學(xué)生】完成課前任務(wù)通過課前任務(wù),使學(xué)生了解本次課的重要性,增加學(xué)生的學(xué)習(xí)興趣考勤

(2min)【教師】清點(diǎn)上課人數(shù),記錄好考勤【學(xué)生】班干部交假條培養(yǎng)學(xué)生的組織紀(jì)律性,掌握學(xué)生的出勤情況新課預(yù)熱

(10min)【教師】與學(xué)生簡單互動,復(fù)習(xí)回顧上次課的內(nèi)容等【學(xué)生】聆聽、互動通過老師與學(xué)生的互動,并讓學(xué)生了解這次課的知識點(diǎn)大致要求問題導(dǎo)入(5min)【教師】提出以下問題:(1)大家知道什么是流程圖嗎?(2)程序流程圖的基本符號都有哪些?【學(xué)生】思考、舉手回答【教師】通過學(xué)生的回答引入要講的知識通過問題導(dǎo)入的方法,引導(dǎo)學(xué)生主動思考,激發(fā)學(xué)生的學(xué)習(xí)興趣傳授新知

(30min)一、流程圖【教師】講解流程圖流程圖是對某一個問題的定義、分析或解法的圖形表示,圖中用各種符號來表示操作、數(shù)據(jù)、流向及裝置等。程序流程圖則表示程序的運(yùn)行順序,是一種常用的表示算法的圖形化工具。換言之,程序流程圖就是通過畫圖的方法表達(dá)程序運(yùn)行的所有路徑,通過使用箭頭和框圖把程序運(yùn)行的方向與步驟展示出來。【學(xué)生】聆聽、記錄、理解二、程序流程圖的基本符號【教師】講解程序流程圖的基本符號程序流程圖的基本符號如圖3-1所示。1)起止符表示算法的起始或結(jié)束。2)判斷符用于對給定的條件進(jìn)行判斷,根據(jù)判斷的結(jié)果來選擇流程方向。它只有一個入口,可以有若干個出口,但有且僅有一個出口被激活。3)處理符表示算法中的具體處理步驟。4)流線符表示數(shù)據(jù)流,箭頭指示流向。5)連接符用于連接因頁面寫不下而斷開的流程線,對應(yīng)的連接符應(yīng)有同一標(biāo)記。6)數(shù)據(jù)符表示未指定媒體的數(shù)據(jù),可用于輸入和輸出,比較通用。圖3-1流程圖基本符號在進(jìn)行程序開發(fā)時,無論是簡單的算法還是復(fù)雜的算法,都可以由順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)這三種基本結(jié)構(gòu)組合而成。順序結(jié)構(gòu):程序從上到下順序地執(zhí)行代碼,中間沒有任何判斷和跳轉(zhuǎn),直到程序結(jié)束。分支結(jié)構(gòu):程序根據(jù)判斷條件的布爾值選擇性地執(zhí)行部分代碼。明確的讓程序知道在什么條件下,該執(zhí)行什么。常用的如if-else語句。循環(huán)結(jié)構(gòu):程序反復(fù)的運(yùn)行某一段代碼,直到不滿足循環(huán)條件才終止循環(huán)。常用的如while循環(huán),for循環(huán)。圖3-23種基本結(jié)構(gòu)【學(xué)生】聆聽、記錄、理解通過教師的講解和演示,使學(xué)生了解流程圖任務(wù)實施(15min)【教師】帶領(lǐng)學(xué)生完成任務(wù)一?【教師】提出任務(wù)我們做任何事情之前,都需要先對問題進(jìn)行分析,然后制定好計劃,最后付諸行動,不然就很容易會陷入混亂。同理,在我們編寫程序前,也應(yīng)該先分析程序的功能和流程;然后進(jìn)行重要步驟規(guī)劃,即畫流程圖;最后根據(jù)流程圖逐步編程實現(xiàn)。本任務(wù)將帶領(lǐng)大家使用流程圖描述“猜數(shù)字”游戲流程?!緦W(xué)生】思考、討論一、進(jìn)行任務(wù)分析:“猜數(shù)字”游戲要求用戶輸入一個數(shù)據(jù),然后和預(yù)設(shè)好的“幸運(yùn)數(shù)字”進(jìn)行比較,如果相同,則輸出“這竟然都被你猜到了!”,否則輸出“猜錯嘍,再接再厲!”,最后輸出“游戲結(jié)束?!备鶕?jù)任務(wù)要求畫出“猜數(shù)字”游戲?qū)?yīng)流程圖。【教師】講解分析任務(wù)【學(xué)生】聆聽、記錄、理解通過任務(wù)實施環(huán)節(jié),讓學(xué)生將所學(xué)知識與實踐相結(jié)合,培養(yǎng)學(xué)生的實操能力實操練習(xí)(15min)【教師】布置任務(wù)繪制出流程圖【教師】巡堂輔導(dǎo),及時解決學(xué)生遇到的問題;安排每組做得最快、最好的學(xué)生輔導(dǎo)其他學(xué)生進(jìn)行操作,并解答其遇到的問題【學(xué)生】對比自己的繪制結(jié)果,若繪制有誤,查找并記錄原因通過實操練習(xí)使學(xué)生鞏固所學(xué)知識,并以學(xué)生為主體,針對學(xué)生接受能力的差異性,讓優(yōu)秀學(xué)生帶動其他學(xué)生掌握知識課堂小結(jié)

(3min)【教師】簡要總結(jié)本節(jié)課的要點(diǎn)利用所學(xué)流程圖知識點(diǎn)畫出“猜數(shù)字”游戲流程圖?!緦W(xué)生】總結(jié)回顧知識點(diǎn)總結(jié)知識點(diǎn),鞏固學(xué)生對流程圖相關(guān)知識的印象作業(yè)布置

(2min)【教師】布置課后作業(yè)利用本節(jié)課所學(xué)知識點(diǎn)自己繪制出“猜數(shù)字”游戲流程圖。【學(xué)生】完成課后任務(wù)通過課后作業(yè)復(fù)習(xí)鞏固學(xué)到的知識,提高實際操作能力教學(xué)反思本次課講授的主要是流程圖知識點(diǎn),通過知識點(diǎn)的學(xué)習(xí)和實踐,讓學(xué)生對Python流程控制語句有了更深入的了解,進(jìn)一步提高了對Python知識的掌握程度,學(xué)生對本次課的學(xué)習(xí)興趣也很高,取得了不錯的教學(xué)效果。但由于課下練習(xí)較少,編程不太熟練,以后要繼續(xù)加強(qiáng)實操部分的練習(xí)。教學(xué)內(nèi)容設(shè)計飛機(jī)行李托運(yùn)費(fèi)計算程序教學(xué)目標(biāo)素質(zhì)目標(biāo):增強(qiáng)學(xué)生總結(jié)規(guī)律,將事物化繁為簡的能力。知識目標(biāo):了解Python的條件判斷語句。掌握if語句的基本形式和使用方法。能力目標(biāo):能夠應(yīng)用條件判斷語句解決實際問題,通過if語句設(shè)計飛機(jī)行李托運(yùn)費(fèi)計算程序。教學(xué)重難點(diǎn)教學(xué)重點(diǎn):Python中if分支語句的使用方法教學(xué)難點(diǎn):Python中if分支語句的應(yīng)用教學(xué)方法案例分析法、問答法、討論法、講授法、實訓(xùn)法教學(xué)用具電腦、投影儀、多媒體課件、教材教學(xué)設(shè)計教學(xué)過程主要教學(xué)內(nèi)容及步驟設(shè)計意圖課前任務(wù)【教師】布置課前任務(wù),提醒同學(xué)通過學(xué)習(xí)軟件,完成課前任務(wù)請大家思考可以通過什么方法可以實現(xiàn)“分級”功能,預(yù)習(xí)本任務(wù)需要的相關(guān)知識點(diǎn)?!緦W(xué)生】完成課前任務(wù)通過課前任務(wù),使學(xué)生了解本次課的重要性,增加學(xué)生的學(xué)習(xí)興趣考勤

(2min)【教師】清點(diǎn)上課人數(shù),記錄好考勤【學(xué)生】班干部交假條培養(yǎng)學(xué)生的組織紀(jì)律性,掌握學(xué)生的出勤情況新課預(yù)熱

(10min)【教師】與學(xué)生簡單互動,復(fù)習(xí)回顧上次課的內(nèi)容等【學(xué)生】聆聽、互動【教師】概括本次課總體學(xué)習(xí)內(nèi)容,讓學(xué)生大體了解本次課學(xué)習(xí)內(nèi)容分支語句可分為簡單的if語句、if-else語句、if-elif-else語句和嵌套的if語句。通過老師與學(xué)生的互動,并讓學(xué)生了解這次課的知識點(diǎn)大致要求問題導(dǎo)入(5min)【教師】提出以下問題:我們都學(xué)過了C語言,請大家思考一下,C語言的分支語句是什么?【學(xué)生】思考、舉手回答【教師】通過學(xué)生的回答引入要講的知識通過問題導(dǎo)入的方法,引導(dǎo)學(xué)生主動思考,激發(fā)學(xué)生的學(xué)習(xí)興趣傳授新知

(30min)一、簡單的if語句【教師】講解Python中的if語句一、if語句在Python提供的多種條件判斷語句中,if語句是最簡單的判斷語句。if語句實現(xiàn)單分支結(jié)構(gòu),使用可以返回一個布爾值的表達(dá)式作為分支條件來進(jìn)行控制。if語句基本語法格式如下所示。if判斷條件:條件成立執(zhí)行的語句#注意執(zhí)行語句的縮進(jìn)其中判斷條件需使用布爾表達(dá)式的形式,在布爾表達(dá)式的后面使用冒號(:)。下面的語句便是條件成立所執(zhí)行的語句,注意使用縮進(jìn)。在Python中,通過將塊中的代碼行縮進(jìn)構(gòu)成代碼塊,相同縮進(jìn)的語句組成一個語句塊。程序會先計算判斷條件的布爾值,如果結(jié)果為True,則執(zhí)行下面的語句;相反的,如果結(jié)果為False,則語句不執(zhí)行,直接執(zhí)行判斷語句的后續(xù)代碼?!緦W(xué)生】聆聽、記錄、理解【教師】布置題目下面if語句用于統(tǒng)計滿足“性別(sex)為男、年齡(age)在45歲以下的黨員(iden)”條件的人數(shù),正確的是()。A.ifsex=="男"andage<=45andiden=="黨員":n+=1B.ifsex=="男"orage<=45andiden=="黨員":n+=1C.ifsex=="男"andage<=45oriden=="黨員":n+=1D.ifsex=="男"orage<=45oriden=="黨員":n+=1【學(xué)生】完成題目【教師】隨機(jī)點(diǎn)名回答二、if-else語句【教師】講解Python中的if-else語句使用if語句僅能實現(xiàn)單分支選擇結(jié)構(gòu),只能在判斷條件為真時指定要執(zhí)行的語句,那么在不滿足條件的情況下,我們想執(zhí)行某段代碼該如何寫呢?if-else語句能夠?qū)崿F(xiàn)雙分支結(jié)構(gòu),滿足條件時,執(zhí)行一段代碼,不滿足條件時,執(zhí)行另外一段代碼。if-else語句語法格式如下所示。if判斷條件:分支一else:分支二在上述格式中,程序會先計算判斷條件的布爾值,如果結(jié)果為True,則執(zhí)行分支一中的所有語句;如果結(jié)果為False,則執(zhí)行分支二中的所有語句。通過else語句,程序可以選擇執(zhí)行。【學(xué)生】聆聽、記錄、理解【教師】演示例3-3,例3-4程序【學(xué)生】觀察運(yùn)行結(jié)果并討論【教師】講解程序【教師】布置題目(1)當(dāng)n=10時,以下程序的輸出結(jié)果是()。n=eval(input("請輸入一個自然數(shù)n:"))ifn<10:n+=1else:n-=1print(n)A.9 B.10C.11 D.錯誤代碼(2)用戶輸入用戶名和密碼,當(dāng)用戶名為admin且密碼為admin123,或用戶名為adminster且密碼為123123時,顯示登錄成功,否則顯示請重新輸入,請在________處填空。name=input("請輸入用戶名:")pw=input("請輸入密碼:")if________①__________print("登錄成功")else:print("______②_______")【學(xué)生】完成題目【教師】隨機(jī)點(diǎn)名回答三、if-elif語句【教師】講解Python中的if-elif語句當(dāng)需要判斷的情況大于兩種情況時,if和if…else語句顯然是無法完成判斷的。所以,我們可以使用if…elif語句來實現(xiàn)多路分支。if-elif語句的語法格式如下所示。if判斷條件一:分支一elif判斷條件二:分支二elif判斷條件三:分支三…elif判斷條件N分支Nelse:分支N+1#注意分支代碼塊的縮進(jìn)其中,elif是elseif的縮寫。為了實現(xiàn)多分支結(jié)構(gòu),程序中可以有多個elif。上述格式的運(yùn)行步驟如下:步驟一:程序計算判斷條件一的布爾值,如果結(jié)果為True,則執(zhí)行分支一。判斷結(jié)束。步驟二:如果為False,則計算判斷條件二的布爾值,如果為True,則執(zhí)行分支二。判斷結(jié)束。步驟三:如果為False,則繼續(xù)判斷條件三的布爾值。如果為True,則執(zhí)行分支三。判斷結(jié)束。步驟四:如果為False,則計算下一個布爾表達(dá)式的值,依此類推,直至結(jié)束。步驟五:如果全部判斷條件的結(jié)果都為False,則執(zhí)行else后的語句。【學(xué)生】聆聽、記錄、理解【教師】演示例3-5程序【學(xué)生】觀察運(yùn)行結(jié)果并討論【教師】講解程序(主要代碼)【教師】布置題目求解分段函數(shù)的值,請在處填空。x=eval(input("請輸入x的值:"))ifx>0:y=x-1elif____①____y=xelse:_____②_____print(y)【學(xué)生】完成題目【教師】隨機(jī)點(diǎn)名回答四、if嵌套【教師】講解Python中的嵌套的if語句使用if語句進(jìn)行條件判斷時,如果希望在條件成立的執(zhí)行語句中增加新的條件判斷,則可以使用if嵌套,也就是說,整個if或if-else語句可以放在另一個if或if-else語句中。if嵌套語句的語法格式如下所示。if外層判斷條件:if內(nèi)層判斷條件:內(nèi)層條件執(zhí)行體1else:內(nèi)層條件執(zhí)行體2else:外層條件執(zhí)行體語法格式中的條件判斷有兩層,程序首先執(zhí)行外層的if條件判斷,若結(jié)果為True,則執(zhí)行內(nèi)層的if條件判斷,否則直接執(zhí)行外層else中的執(zhí)行體。執(zhí)行內(nèi)層if條件判斷時,若結(jié)果為True,執(zhí)行內(nèi)層條件執(zhí)行體1,否則執(zhí)行內(nèi)層條件執(zhí)行體2。【學(xué)生】聆聽、記錄、理解【教師】演示例3-6程序【學(xué)生】觀察運(yùn)行結(jié)果并討論【教師】講解程序(主要代碼)【教師】布置題目(1)以下關(guān)于判斷結(jié)構(gòu)的描述中,錯誤的是()。A.if語句中語句塊執(zhí)行與否依賴于條件判斷B.if語句中條件部分可以使用任何能夠產(chǎn)生True和False的語句和函數(shù)C.判斷結(jié)構(gòu)中,每一個if后面必須有elif或elseD.if-else結(jié)構(gòu)可以嵌套(2)編程題:停車場的收費(fèi)標(biāo)準(zhǔn)是半小時內(nèi)不收費(fèi),超過半小時,不足1小時,收費(fèi)5元;超過1小時,每15分鐘收費(fèi)2.5元,不足15分鐘按15分鐘收取。試編寫程序,計算每輛車的停車費(fèi)。提示:向上取整用math.ceil(x)函數(shù)?!緦W(xué)生】完成題目【教師】隨機(jī)點(diǎn)名回答通過教師的講解和演示,使學(xué)生了解Python分支語句的使用任務(wù)實施(15min)【教師】帶領(lǐng)學(xué)生完成任務(wù)二?【教師】提出任務(wù)飛機(jī)的行李托運(yùn)系統(tǒng)可以根據(jù)行李重量的不同將托運(yùn)費(fèi)用分為不同等級,然后當(dāng)行李重量達(dá)到某一條件時,自動計算出所要繳納的托運(yùn)費(fèi)用。正所謂“化繁為簡,分而治之”,在Python程序中,當(dāng)遇到需要根據(jù)某個條件(行李重量)是否滿足來決定是否執(zhí)行某些指定操作時,就可以利用條件判斷語句來解決問題。本任務(wù)將帶領(lǐng)大家編寫Python程序,通過條件判斷語句設(shè)計飛機(jī)行李托運(yùn)費(fèi)計算程序?!緦W(xué)生】思考、討論一、進(jìn)行任務(wù)分析:完成本任務(wù),須假設(shè)飛機(jī)上個人托運(yùn)行李的條件是:行李重量在20千克以下免費(fèi)托運(yùn),20-30千克超出部分5元/千克;30-40千克超出部分10元/千克;40-50千克超出部分15元/千克;50千克以上不允許個人攜帶。由于行李在不同的重量時所需的費(fèi)用不同,那么我們需要對行李的重量進(jìn)行判斷,分情況來處理。1.利用print()函數(shù)輸入行李重量。2.根據(jù)行李重量值判斷等級,同時計算并輸出相應(yīng)的行李托運(yùn)費(fèi)。本任務(wù)首先需要判斷行李重量是否大于0千克,在確定數(shù)值有意義的情況下再判斷該值處于哪個范圍。因此,可以利用嵌套的if語句來完成本任務(wù),并在內(nèi)嵌if語句中利用if-elif-else語句實現(xiàn)多次判斷。二、參考代碼:money=0luggage=int(input("請輸入行李重量:")) #利用print()函數(shù)輸入行李重量。if(luggage>0): #行李重量大于0千克if(luggage<20): #行李重量在20千克以下免費(fèi)托運(yùn);print("免費(fèi)托運(yùn)")elif(20<=luggage<30): #20-30千克超出部分5元/千克;money+=(luggage-19)*5print(f"你本次需要付費(fèi){money}元")elif(30<=luggage<40): #30-40千克超出部分10元/千克;money+=(luggage-29)*10print(f"你本次需要付費(fèi){money}元")elif(40<=luggage<=50): #40-50千克超出部分15元/千克;money+=(luggage-39)*15print(f"你本次需要付費(fèi){money}元")else: #50千克以上不允許個人攜帶print("超過50千克的行李不允許個人攜帶!")else:print('數(shù)據(jù)輸入錯誤!') #輸出數(shù)據(jù)錯誤提示三、代碼運(yùn)行四、代碼分析【學(xué)生】聆聽、記錄、理解通過任務(wù)實施環(huán)節(jié),讓學(xué)生將所學(xué)知識與實踐相結(jié)合,培養(yǎng)學(xué)生的實操能力實操練習(xí)(15min)【教師】巡堂輔導(dǎo),及時解決學(xué)生遇到的問題;安排每組做得最快、最好的學(xué)生輔導(dǎo)其他學(xué)生進(jìn)行操作,并解答其遇到的問題【學(xué)生】對比自己的繪制結(jié)果,若繪制有誤,查找并記錄原因通過實操練習(xí)使學(xué)生鞏固所學(xué)知識,并以學(xué)生為主體,針對學(xué)生接受能力的差異性,讓優(yōu)秀學(xué)生帶動其他學(xué)生掌握知識課堂小結(jié)

(3min)【教師】簡要總結(jié)本節(jié)課的要點(diǎn)利用所學(xué)分支判斷語句設(shè)計飛機(jī)行李托運(yùn)費(fèi)計算程序?!緦W(xué)生】總結(jié)回顧知識點(diǎn)總結(jié)知識點(diǎn),鞏固學(xué)生對Python分支語句相關(guān)知識的印象作業(yè)布置

(2min)【教師】布置課后作業(yè)利用本節(jié)課所學(xué)知識點(diǎn)自己設(shè)計飛機(jī)行李托運(yùn)費(fèi)計算程序。【學(xué)生】完成課后任務(wù)通過課后作業(yè)復(fù)習(xí)鞏固學(xué)到的知識,提高實際操作能力教學(xué)反思本次課講授的主要是Python中的if分支知識點(diǎn),通過知識點(diǎn)的學(xué)習(xí)和實踐,讓學(xué)生對Python流程控制語句有了更深入的了解,進(jìn)一步提高了對Python知識的掌握程度,學(xué)生對本次課的學(xué)習(xí)興趣也很高,取得了不錯的教學(xué)效果。但由于課下練習(xí)較少,編程不太熟練,以后要繼續(xù)加強(qiáng)實操部分的練習(xí)。教學(xué)內(nèi)容開發(fā)“進(jìn)步一點(diǎn)點(diǎn)”游戲教學(xué)目標(biāo)素質(zhì)目標(biāo):培養(yǎng)學(xué)生自信果敢、自強(qiáng)不息、永不懈怠、銳意進(jìn)取的精神風(fēng)貌和奮斗姿態(tài)。 知識目標(biāo):了解Python的循環(huán)語句。掌握for循環(huán)的語法格式和執(zhí)行過程。掌握while、do-while語句的基本格式和使用方法。理解continue語句和break語句的作用。能力目標(biāo):能夠應(yīng)用循環(huán)語句開發(fā)“進(jìn)步一點(diǎn)點(diǎn)”游戲。教學(xué)重難點(diǎn)教學(xué)重點(diǎn):while和for循環(huán)語句的使用方法,break和continue跳轉(zhuǎn)語句的使用方法,能畫程序流程圖。教學(xué)難點(diǎn):利用所學(xué)知識點(diǎn)解決實際問題。教學(xué)方法案例分析法、問答法、討論法、講授法、實訓(xùn)法教學(xué)用具電腦、投影儀、多媒體課件、教材教學(xué)設(shè)計教學(xué)過程主要教學(xué)內(nèi)容及步驟設(shè)計意圖課前任務(wù)【教師】布置課前任務(wù),提醒同學(xué)通過文旌課堂APP或其他學(xué)習(xí)軟件,完成課前任務(wù)請大家思考可以通過什么方法可以開發(fā)“進(jìn)步一點(diǎn)點(diǎn)”游戲,預(yù)習(xí)本任務(wù)需要的相關(guān)知識點(diǎn)?!緦W(xué)生】完成課前任務(wù)通過課前任務(wù),使學(xué)生了解本次課的重要性,增加學(xué)生的學(xué)習(xí)興趣考勤

(2min)【教師】清點(diǎn)上課人數(shù),記錄好考勤【學(xué)生】班干部交假條培養(yǎng)學(xué)生的組織紀(jì)律性,掌握學(xué)生的出勤情況新課預(yù)熱

(10min)【教師】與學(xué)生簡單互動,復(fù)習(xí)回顧上次課的內(nèi)容等【學(xué)生】聆聽、互動【教師】概括本次課總體學(xué)習(xí)內(nèi)容,讓學(xué)生大體了解本次課學(xué)習(xí)內(nèi)容循環(huán)語句可分為while語句、for語句和嵌套的循環(huán)語句。跳轉(zhuǎn)語句可分為break語句和continue語句。通過老師與學(xué)生的互動,并讓學(xué)生了解這次課的知識點(diǎn)大致要求問題導(dǎo)入(5min)【教師】提出以下問題:我們都學(xué)過了C語言,請大家思考一下,C語言的循環(huán)控制語句是什么?【學(xué)生】思考、舉手回答【教師】通過學(xué)生的回答引入要講的知識通過問題導(dǎo)入的方法,引導(dǎo)學(xué)生主動思考,激發(fā)學(xué)生的學(xué)習(xí)興趣傳授新知

(30min)一、for語句【教師】講解Python中的for語句1、基本語法格式for語句的基本語法格式如下。for變量in序列:語句塊 #循環(huán)體上述語句的執(zhí)行過程是:如果序列中包含表達(dá)式,則先進(jìn)行求值計算;然后,序列中的第一個元素賦給變量,執(zhí)行循環(huán)體;接著序列中的第二個元素賦給變量,執(zhí)行循環(huán)體;依此類推,直到序列中最后一個元素賦給變量,執(zhí)行循環(huán)體后for循環(huán)結(jié)束,執(zhí)行for語句后的語句。例如,使用for循環(huán)輸出字符串“python”中的每一個字符,可使用下面代碼實現(xiàn)。forxin'python':print(x)【教師】強(qiáng)調(diào)以下問題Python中的for循環(huán)常用于遍歷列表、元組、字符串及字典等序列中的元素。具體使用方法將陸續(xù)在以后項目中介紹。【學(xué)生】聆聽、記錄、理解2、range()函數(shù)for語句經(jīng)常與range()函數(shù)一起使用,range()函數(shù)是Python的內(nèi)置函數(shù),可創(chuàng)建一個整數(shù)列表。range()函數(shù)的語法格式如下。range([start,]stop[,step])(1)start:計數(shù)從start開始,默認(rèn)為0。例如,range(5)等價于range(0,5)。(2)stop:計數(shù)到stop結(jié)束,但不包含stop。例如,range(0,5)是[0,1,2,3,4]。(3)step:步長,默認(rèn)為1。例如,range(0,5)等價于range(0,5,1)?!窘處煛垦菔纠?-9至例3-12程序【學(xué)生】觀察運(yùn)行結(jié)果并討論【教師】講解程序【教師】布置題目(1)以下程序的輸出結(jié)果是()。forsin"Iamalovelyboy":ifs=="a":s="'"print(s,end="")A.Imlovelyboy B.I'm'lovelyboyC.I'malovelyboy D.I'malovelyboy(2)在Python語言中,使用forin方式形成的循環(huán)不能遍歷的類型是()。A.字符串 B.元組 C.列表 D.實數(shù)(3)下列程序段的循環(huán)次數(shù)是()。foriinrange(1,5):print(i)A.3 B.4 C.5 D.不確定(4)以下程序的輸出結(jié)果是______。sum=0foriinrange(20):sum+=iprint(sum)(5)以下程序的輸出結(jié)果是_______。forsin"PyCharm-Python":ifs=="-":breakprint(s,end="")(6)以下程序用于求解等比數(shù)列(從第二項起,每一項與它的前一項的比值等于同一個常數(shù)q的一種數(shù)列)前n項和s,設(shè)a為首項,請在________處填空。a=eval(input("請輸入等比數(shù)列的首項:"))q=eval(input("等比數(shù)列的比值為:"))n=eval(input("前n項"))①foriinrange②:s+=a*q**iprint(s)【學(xué)生】完成題目【教師】隨機(jī)點(diǎn)名回答二、while語句【教師】講解Python中的while語句while語句的基本語法格式如下。while判斷條件:語句塊#循環(huán)體上述語句的執(zhí)行過程是,當(dāng)判斷條件為True時,執(zhí)行循環(huán)體;接著再次判斷條件,如果為True,繼續(xù)執(zhí)行循環(huán)體;如此反復(fù),直到判斷條件為False時結(jié)束循環(huán),執(zhí)行while語句后的語句。【教師】強(qiáng)調(diào)以下問題while語句是“先判斷,后執(zhí)行”。如果剛進(jìn)入循環(huán)時判斷條件就不滿足,則循環(huán)體一次也不執(zhí)行。還需要注意的是,循環(huán)體中一定要有語句修改判斷條件,使其有為False的時候,否則將出現(xiàn)“死循環(huán)”?!緦W(xué)生】聆聽、記錄、理解【教師】演示例3-15程序【學(xué)生】觀察運(yùn)行結(jié)果并討論【教師】講解程序【學(xué)生】聆聽、記錄、理解【教師】布置題目(1)以下程序的輸出結(jié)果是()。n=1s=1y=0whilen<5:s*=ny+=sn+=1print(y)A.24 B.120 C.33 D.143(2)下列程序段的循環(huán)次數(shù)是()。k=100whilek>=1:print(k)k=k/2A.100 B.99 C.50 D.7【學(xué)生】完成題目【教師】隨機(jī)點(diǎn)名回答三、嵌套的循環(huán)語句【教師】講解Python中的嵌套的循環(huán)語句一個循環(huán)語句的循環(huán)體內(nèi)包含另一個完整的循環(huán)結(jié)構(gòu),稱為循環(huán)的嵌套。嵌套在循環(huán)體內(nèi)的循環(huán)稱為內(nèi)循環(huán),嵌套有內(nèi)循環(huán)的循環(huán)稱為外循環(huán)。內(nèi)循環(huán)中還可以嵌套循環(huán),這就是多重循環(huán)。while語句和for語句可以互相嵌套,自由組合。外層循環(huán)體中可以包含一個或多個內(nèi)層循環(huán)結(jié)構(gòu),但要注意的是,各循環(huán)必須完整包含,相互之間不允許有交叉現(xiàn)象?!緦W(xué)生】聆聽、記錄、理解【教師】強(qiáng)調(diào)以下問題print()函數(shù)默認(rèn)是輸出一行,且末尾加換行。如果想要末尾不換行且同時加上符號,可使用“end=”實現(xiàn)。例如:print(‘我愛你’,end=’,’)print(‘中國’,end=’’)print(‘China’,end=’?!?上述代碼輸出結(jié)果為“我愛你,中國China。”【學(xué)生】聆聽、記錄、理解四、break和continue語句【教師】講解Python中的break和continue語句前面介紹的循環(huán)都是當(dāng)循環(huán)條件為False時退出循環(huán),然而,在某些場合,只要滿足一定的條件就應(yīng)當(dāng)提前結(jié)束正在執(zhí)行的循環(huán)操作。此時,Python提供了break和continue跳轉(zhuǎn)語句來結(jié)束循環(huán)。1、break語句在循環(huán)結(jié)構(gòu)中,break語句通常與if語句一起使用,以便在滿足條件時跳出循環(huán)?!緦W(xué)生】聆聽、記錄、理解【教師】演示例3-18和例3-19程序【學(xué)生】觀察運(yùn)行結(jié)果并討論【教師】講解程序(主要代碼)【學(xué)生】聆聽、記錄、理解2、continue語句有時并不希望終止整個循環(huán)的操作,而只希望提前結(jié)束本次循環(huán),接著執(zhí)行下次循環(huán),此時可使用continue語句。與break語句不同,continue語句的作用是結(jié)束本次循環(huán),即跳過循環(huán)體中continue語句后面的語句,開始下一次循環(huán)?!窘處煛垦菔纠?-20和例3-21程序【學(xué)生】觀察運(yùn)行結(jié)果并討論【教師】講解程序(主要代碼)【學(xué)生】聆聽、記錄、理解【教師】布置題目(1)選擇題:以下關(guān)于分支和循環(huán)結(jié)構(gòu)的描述中,正確的是()。A.continue可以終止循環(huán)B.while循環(huán)只能用于實現(xiàn)無限循環(huán)C.所有的for循環(huán)都可以用while循環(huán)改寫D.break可以停止后續(xù)代碼的執(zhí)行,從循環(huán)的開頭重新執(zhí)行(2)填空題:在循環(huán)結(jié)構(gòu)中使用關(guān)鍵字可以跳出本次循環(huán),從循環(huán)的開頭重新執(zhí)行?!緦W(xué)生】完成題目【教師】隨機(jī)點(diǎn)名回答通過教師的講解和演示,使學(xué)生了解Python中的循環(huán)語句的使用任務(wù)實施(15min)【教師】帶領(lǐng)學(xué)生完成任務(wù)三?【教師】提出任務(wù)典故《鐵杵磨成針》里的老婆婆說到,“只要功夫深,每天堅持,一定可以磨成針”。在我們?nèi)粘I钪?,只要大家在自我生命中,加入“積極”、“堅持”的因子,每天努力朝向自己的目標(biāo)進(jìn)步一點(diǎn)點(diǎn),那么,我們的成績就會愈來愈亮麗!相反,如果“偷懶”、“萎靡”,那么我們的命運(yùn)可能就是極普通,甚至是倒退的景象。本任務(wù)將帶領(lǐng)大家編寫Python程序,利用Python的循環(huán)結(jié)構(gòu),開發(fā)“進(jìn)步一點(diǎn)點(diǎn)”游戲。【學(xué)生】思考、討論一、進(jìn)行任務(wù)分析:完成本任務(wù),須利用循環(huán)結(jié)構(gòu)。1.定義變量hard和lazy分別用于記錄用戶努力和懶惰的收獲,并賦初值為1。2.定義變量day

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論