版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1
結(jié)構(gòu)化程序設(shè)計(jì)3.1結(jié)構(gòu)化程序設(shè)計(jì)程序設(shè)計(jì)與算法一般說來,程序設(shè)計(jì)包括以下步驟:①問題定義;②算法設(shè)計(jì);③算法表示(如流程圖設(shè)計(jì));④程序編制;⑤程序調(diào)試、測試及資料編制。23.1結(jié)構(gòu)化程序設(shè)計(jì)程序設(shè)計(jì)與算法33.1結(jié)構(gòu)化程序設(shè)計(jì)流程圖表示方式43.1結(jié)構(gòu)化程序設(shè)計(jì)結(jié)構(gòu)化程序設(shè)計(jì)的基本要點(diǎn)53.1結(jié)構(gòu)化程序設(shè)計(jì)結(jié)構(gòu)化程序設(shè)計(jì)的基本要點(diǎn)63.1結(jié)構(gòu)化程序設(shè)計(jì)結(jié)構(gòu)化程序設(shè)計(jì)的基本要點(diǎn)三種基本結(jié)構(gòu)的共同特點(diǎn)是:1)只有單一的入口和單一的出口;2)結(jié)構(gòu)中的每個(gè)部分都有執(zhí)行到的可能;3)結(jié)構(gòu)內(nèi)不存在永不終止的死循環(huán)。因此,結(jié)構(gòu)化程序設(shè)計(jì)的基本思想是采用“自頂向下,逐步求精”的程序設(shè)計(jì)方法和“單入口單出口”的控制結(jié)構(gòu)。73.2選擇結(jié)構(gòu)if語句的形式83.2選擇結(jié)構(gòu)if語句的形式93.2選擇結(jié)構(gòu)if語句的形式103.2選擇結(jié)構(gòu)if語句的形式113.2選擇結(jié)構(gòu)if語句的形式123.2選擇結(jié)構(gòu)if語句的嵌套133.2選擇結(jié)構(gòu)if語句實(shí)例143.2選擇結(jié)構(gòu)if語句實(shí)例153.2選擇結(jié)構(gòu)if語句實(shí)例163.2選擇結(jié)構(gòu)assert斷言函數(shù)及用法173.2選擇結(jié)構(gòu)assert實(shí)例183.3循環(huán)結(jié)構(gòu)while循環(huán)語句193.3循環(huán)結(jié)構(gòu)while循環(huán)語句203.3循環(huán)結(jié)構(gòu)while循環(huán)語句213.3循環(huán)結(jié)構(gòu)for循環(huán)語句223.3循環(huán)結(jié)構(gòu)for循環(huán)語句233.3循環(huán)結(jié)構(gòu)for循環(huán)語句243.3循環(huán)結(jié)構(gòu)for循環(huán)語句253.3循環(huán)結(jié)構(gòu)范圍及for循環(huán)控制263.3循環(huán)結(jié)構(gòu)范圍及for循環(huán)控制273.3循環(huán)結(jié)構(gòu)范圍及for循環(huán)控制283.3循環(huán)結(jié)構(gòu)循環(huán)嵌套293.3循環(huán)結(jié)構(gòu)循環(huán)嵌套303.3循環(huán)結(jié)構(gòu)循環(huán)嵌套313.3循環(huán)結(jié)構(gòu)循環(huán)嵌套323.3循環(huán)結(jié)構(gòu)循環(huán)控制語句1.break語句break語句,在語句塊執(zhí)行過程中終止當(dāng)前循環(huán),并且跳出當(dāng)前循環(huán)。break語句可以立即終止當(dāng)前循環(huán)的執(zhí)行,跳出當(dāng)前所在的循環(huán)結(jié)構(gòu)。無論是while循環(huán)還是for循環(huán),只要執(zhí)行break語句,就會直接結(jié)束當(dāng)前正在執(zhí)行的循環(huán)體。break語句的語法非常簡單,只需要在相應(yīng)while或for語句中直接加入即可,一般會結(jié)合if語句進(jìn)行搭配使用,表示在某種條件下跳出循環(huán)體。333.3循環(huán)結(jié)構(gòu)循環(huán)控制語句343.3循環(huán)結(jié)構(gòu)循環(huán)控制語句353.3循環(huán)結(jié)構(gòu)循環(huán)控制語句2.continue語句continue語句執(zhí)行過程中終止當(dāng)前循環(huán),跳出該次循環(huán),執(zhí)行下一次循環(huán)。和break語句相比,continue語句的作用沒有那么強(qiáng)大,它只會終止執(zhí)行本次循環(huán)中剩下的代碼,直接從下一次循環(huán)繼續(xù)執(zhí)行。continue語句的用法和break語句一樣,只要while或for語句中的相應(yīng)位置加入即可。363.3循環(huán)結(jié)構(gòu)循環(huán)控制語句373.3循環(huán)結(jié)構(gòu)循環(huán)控制語句2.continue語句continue語句執(zhí)行過程中終止當(dāng)前循環(huán),跳出該次循環(huán),執(zhí)行下一次循環(huán)。和break語句相比,continue語句的作用沒有那么強(qiáng)大,它只會終止執(zhí)行本次循環(huán)中剩下的代碼,直接從下一次循環(huán)繼續(xù)執(zhí)行。continue語句的用法和break語句一樣,只要while或for語句中的相應(yīng)位置加入即可。383.3循環(huán)結(jié)構(gòu)循環(huán)控制語句3.pass語句pass是空語句,只是起到保持程序結(jié)構(gòu)的完整性作用。393.3循環(huán)結(jié)構(gòu)循環(huán)控制語句403.4采用選擇與循環(huán)實(shí)現(xiàn)序列操作序列推導(dǎo)式1.列表推導(dǎo)式使用[]生成list的基本格式為:variable=[out_exp_resforout_expininput_listifout_exp==2]其中out_exp_res為列表生成元素表達(dá)式,可以是有返回值的函數(shù);forout_expininput_list為迭代input_list將out_exp傳入out_exp_res表達(dá)式中;ifout_exp==2為根據(jù)條件過濾哪些值。413.4采用選擇與循環(huán)實(shí)現(xiàn)序列操作序列推導(dǎo)式423.4采用選擇與循環(huán)實(shí)現(xiàn)序列操作序列推導(dǎo)式2.字典推導(dǎo)式字典推導(dǎo)和列表推導(dǎo)的使用方法是類似的,需要將中括號改成大括號。433.4采用選擇與循環(huán)實(shí)現(xiàn)序列操作序列推導(dǎo)式443.4采用選擇與循環(huán)實(shí)現(xiàn)序列操作序列推導(dǎo)式453.4采用選擇與循環(huán)實(shí)現(xiàn)序列操作序列推導(dǎo)式3.集合推導(dǎo)式它們跟列表推導(dǎo)式也是類似的,唯一的區(qū)別在于它使用大括號{}。463.4采用選擇與循環(huán)實(shí)現(xiàn)序列操作序列推導(dǎo)式473.4采用選擇與循環(huán)實(shí)現(xiàn)序列操作zip函數(shù)及用法zip()函數(shù)是Python內(nèi)置函數(shù)之一,它可以將多個(gè)序列(列表、元組、字典、集合、字符串以及range()區(qū)間構(gòu)成的列表)“壓縮”成一個(gè)zip對象。所謂“壓縮”,其實(shí)就是將這些序列中對應(yīng)位置的元素重新組合,生成一個(gè)個(gè)新的元組。zip()函數(shù)的語法格式為:zip(iterable,...)其中iterable,...表示多個(gè)列表、元組、字典、集合、字符串,甚至還可以為range()區(qū)間。483.4采用選擇與循環(huán)實(shí)現(xiàn)序列操作zip函數(shù)及用法493.4采用選擇與循環(huán)實(shí)現(xiàn)序列操作reversed函數(shù)及用法reserved()是Pyton內(nèi)置函數(shù)之一,其功能是對于給定的序列(包括列表、元組、字符串以及range(n)區(qū)間),該函數(shù)可以返回一個(gè)逆序序列的迭代器(用于遍歷該逆序序列)。reserved()函數(shù)的語法格式如下:reversed(seq)其中,seq可以是列表、元素、字符串以及range()生成的區(qū)間列表。503.4采用選擇與循環(huán)實(shí)現(xiàn)序列操作reversed函數(shù)及用法513.4采用選擇與循環(huán)實(shí)現(xiàn)序列操作sorted函數(shù)及用法sorted()作為Python內(nèi)置函數(shù)之一,其功能是對序列(列表、元組、字典、集合、還包括字符串)進(jìn)行排序。sorted()函數(shù)的基本語法格式如下:list=sorted(iterable,key=None,reverse=False)sorted()函數(shù)會返回一個(gè)排好序的列表。其中,iterable表示指定的序列,key參數(shù)可以自定義排序規(guī)則;reverse參數(shù)指定以升序(False,默認(rèn))還是降序(True)進(jìn)行排序;key參數(shù)和reverse參數(shù)是可選參數(shù),即可以使用,也可以忽略。523.4采用選擇與循環(huán)實(shí)現(xiàn)序列操作sorted函數(shù)及用法533.5綜合案例解析1.編寫計(jì)算班級學(xué)生平均分程序543.5綜合案例解析1.編寫計(jì)算班級學(xué)生平均分程序553.5綜合案例解析2.編寫判讀是否素?cái)?shù)的程序5657
函數(shù)、模塊與類4.1函數(shù)的定義函數(shù)定義規(guī)則1)函數(shù)代碼塊以def關(guān)鍵詞開頭,后接函數(shù)標(biāo)識符名稱和圓括號()。2)任何傳入?yún)?shù)和自變量必須放在圓括號中間,圓括號之間可以用于定義參數(shù)。3)函數(shù)的第一行語句可以選擇性地使用文檔字符串,用于存放函數(shù)說明。4)函數(shù)內(nèi)容以冒號起始,并且統(tǒng)一縮進(jìn)。584.1函數(shù)的定義函數(shù)定義規(guī)則594.1函數(shù)的定義函數(shù)定義規(guī)則604.1函數(shù)的定義614.1函數(shù)的定義函數(shù)的形式參數(shù)和實(shí)際參數(shù)(1)形式參數(shù):在定義函數(shù)時(shí),函數(shù)名后面括號中的參數(shù)就是形式參數(shù),例如:#定義函數(shù)時(shí),這里的函數(shù)參數(shù)obj就是形式參數(shù)defdemo(obj):print(obj)624.1函數(shù)的定義函數(shù)的形式參數(shù)和實(shí)際參數(shù)(2)實(shí)際參數(shù):在調(diào)用函數(shù)時(shí),函數(shù)名后面括號中的參數(shù)稱為實(shí)際參數(shù),也就是函數(shù)的調(diào)用者給函數(shù)的參數(shù)。例如:a="Python學(xué)習(xí)小組"#調(diào)用已經(jīng)定義好的demo函數(shù),此時(shí)傳入的函數(shù)參數(shù)a就是實(shí)際參數(shù)demo(a)634.1函數(shù)的定義函數(shù)的形式參數(shù)和實(shí)際參數(shù)根據(jù)實(shí)際參數(shù)的類型不同,函數(shù)參數(shù)的傳遞方式可分為2種,分別為值傳遞和引用(地址)傳遞:(1)值傳遞:適用于實(shí)參類型為不可變類型(字符串、數(shù)字、元組);(2)引用(地址)傳遞:適用于實(shí)參類型為可變類型(列表,字典)。644.1函數(shù)的定義函數(shù)的形式參數(shù)和實(shí)際參數(shù)654.1函數(shù)的定義函數(shù)的形式參數(shù)和實(shí)際參數(shù)664.1函數(shù)的定義值傳遞機(jī)制674.1函數(shù)的定義值傳遞機(jī)制684.1函數(shù)的定義引用傳遞機(jī)制694.1函數(shù)的定義引用傳遞機(jī)制704.1函數(shù)的定義函數(shù)的關(guān)鍵字參數(shù)714.1函數(shù)的定義函數(shù)的默認(rèn)值參數(shù)724.1函數(shù)的定義函數(shù)的默認(rèn)值參數(shù)734.1函數(shù)的定義函數(shù)的默認(rèn)值參數(shù)744.1函數(shù)的定義None返回值常量None(N必須大寫)。和False不同,它不表示0,也不表示空字符串,而表示“沒有值”,也就是空值。這里的空值并不代表空對象,即None和[]、“”不同。None有自己的數(shù)據(jù)類型,可以在使用type()函數(shù)查看它的類型,屬于NoneType類型。None常用于assert、判斷以及函數(shù)無返回值的情況。比如使用print()函數(shù)輸出數(shù)據(jù),其實(shí)該函數(shù)的返回值就是None。因?yàn)樗墓δ苁窃谄聊簧巷@示文本,根本不需要返回任何值,所以print()就返回None。對于所有沒有return語句的函數(shù)定義,Python都會在末尾加上returnNone,使用不帶值的return語句(也就是只有return關(guān)鍵字本身),那么就返回None。754.1函數(shù)的定義None返回值764.1函數(shù)的定義局部變量在函數(shù)內(nèi)部定義的變量,它的作用域也僅限于函數(shù)內(nèi)部,出了函數(shù)就不能使用了,將這樣的變量稱為局部變量(LocalVariable)。當(dāng)函數(shù)被執(zhí)行時(shí),Python會為其分配一塊臨時(shí)的存儲空間,所有在函數(shù)內(nèi)部定義的變量,都會存儲在這塊空間中。而在函數(shù)執(zhí)行完畢后,這塊臨時(shí)存儲空間隨即會被釋放并回收,該空間中存儲的變量自然也就無法再被使用。774.1函數(shù)的定義局部變量784.1函數(shù)的定義全局變量794.1函數(shù)的定義全局變量804.1函數(shù)的定義為函數(shù)提供說明文檔814.2函數(shù)的高級應(yīng)用匿名函數(shù)lambda表達(dá)式824.2函數(shù)的高級應(yīng)用匿名函數(shù)lambda表達(dá)式834.2函數(shù)的高級應(yīng)用閉包函數(shù)844.2函數(shù)的高級應(yīng)用遞歸函數(shù)(1)必須有一個(gè)明確的結(jié)束條件。(2)每次進(jìn)入更深一層遞歸時(shí),問題規(guī)模相比上次遞歸都應(yīng)有所減少。(3)相鄰兩次重復(fù)之間有緊密的聯(lián)系,前一次要為后一次做準(zhǔn)備(通常前一次的輸出就作為后一次的輸入)。(4)遞歸效率不高,遞歸層次過多會導(dǎo)致棧溢出,因?yàn)楹瘮?shù)調(diào)用是通過棧(stack)這種數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的,每當(dāng)進(jìn)入一個(gè)函數(shù)調(diào)用,棧就會加一層棧幀,每當(dāng)函數(shù)返回,棧就會減一層棧幀。由于棧的大小不是無限的,所以,遞歸調(diào)用的次數(shù)過多,會導(dǎo)致棧溢出。854.2函數(shù)的高級應(yīng)用遞歸函數(shù)864.2函數(shù)的高級應(yīng)用遞歸函數(shù)874.2函數(shù)的高級應(yīng)用遞歸函數(shù)884.3類與對象對象的引入894.3類與對象對象的引入904.3類與對象對象的常用術(shù)語914.3類與對象類的定義924.3類與對象類和對象的關(guān)系934.3類與對象類的構(gòu)造方法944.3類與對象類的構(gòu)造方法954.3類與對象類的構(gòu)造方法964.3類與對象類的構(gòu)造方法974.3類與對象類的構(gòu)造方法984.3類與對象類的構(gòu)造方法994.3類與對象property()函數(shù)和@property裝飾器1004.3類與對象property()函數(shù)和@property裝飾器1014.3類與對象property()函數(shù)和@property裝飾器1024.3類與對象property()函數(shù)和@property裝飾器1034.3類與對象property()函數(shù)和@property裝飾器1044.3類與對象property()函數(shù)和@property裝飾器1054.4類的封裝與繼承封裝1064.4類的封裝與繼承封裝1074.4類的封裝與繼承封裝1084.4類的封裝與繼承繼承1094.4類的封裝與繼承繼承1104.4類的封裝與繼承繼承1114.4類的封裝與繼承多態(tài)1124.4類的封裝與繼承多態(tài)1134.5模塊與庫使用import來導(dǎo)入模塊的語法格式1144.5模塊與庫使用import來導(dǎo)入模塊的語法格式1154.5模塊與庫1164.5模塊與庫1174.5模塊與庫1184.5模塊與庫datetime模塊1194.5模塊與庫datetime模塊1204.5模塊與庫datetime模塊1214.5模塊與庫datetime模塊1224.5模塊與庫datetime模塊1234.5模塊與庫datetime模塊1244.5模塊與庫time模塊 time.localtime([secs]):將一個(gè)時(shí)間戳轉(zhuǎn)換為當(dāng)前時(shí)區(qū)的struct_time。secs參數(shù)未提供,則以當(dāng)前時(shí)間為準(zhǔn)。 time.gmtime([secs]):和localtime()方法類似,gmtime()方法是將一個(gè)時(shí)間戳轉(zhuǎn)換為UTC時(shí)區(qū)(0時(shí)區(qū))的struct_time。 time.time():返回當(dāng)前時(shí)間的時(shí)間戳。 time.mktime(t):將一個(gè)struct_time轉(zhuǎn)化為時(shí)間戳。 time.sleep(secs):線程推遲指定的時(shí)間運(yùn)行。單位為秒。 time.asctime([t]):把一個(gè)表示時(shí)間的元組或者struct_time表示為這種形式:'Sun
Oct
18
2
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 全國講師培訓(xùn)課件
- 七年級道德與法治上冊第四單元生命的思考第八課探問生命第二框敬畏生命教案新人教版
- 成都酒店英語培訓(xùn)課件
- 2021幼兒園園長證培訓(xùn)測試題庫含答案
- 團(tuán)隊(duì)規(guī)劃培訓(xùn)課件
- 《細(xì)胞周期的調(diào)控》課件
- 培訓(xùn)課件選擇思路
- 微笑禮儀培訓(xùn)課件
- 《病例討論傷寒》課件
- 《致我所有的朋友》課件
- 新疆維吾爾自治區(qū)石河子市初中語文九年級期末高分通關(guān)題詳細(xì)答案和解析
- 空置場地租賃協(xié)議
- 三相異步電動機(jī)的拆裝
- 人教版八年級語文上冊期末考試卷及答案
- 軟件安全之惡意代碼機(jī)理與防護(hù)-武漢大學(xué)中國大學(xué)mooc課后章節(jié)答案期末考試題庫2023年
- 《研學(xué)旅行基地(營地)設(shè)施與服務(wù)規(guī)范》
- (完整word版)文件管理控制程序
- 他山之石探Lululemon的崛起之路-東北證券
- 無人機(jī)駕駛航空試驗(yàn)基地(試驗(yàn)區(qū))基礎(chǔ)設(shè)施建設(shè)規(guī)范(征求意見稿)
- 2023-2024學(xué)年甘肅省天水市小學(xué)語文六年級期末評估試卷附參考答案和詳細(xì)解析
- 滑行類游樂設(shè)施事故應(yīng)急預(yù)案
評論
0/150
提交評論