![Python程序設(shè)計(jì)基礎(chǔ)項(xiàng)目化教程 課件 項(xiàng)目4 函數(shù)與模塊_第1頁(yè)](http://file4.renrendoc.com/view11/M00/1B/3E/wKhkGWX__kKASxNfAAEnrgIcHLg710.jpg)
![Python程序設(shè)計(jì)基礎(chǔ)項(xiàng)目化教程 課件 項(xiàng)目4 函數(shù)與模塊_第2頁(yè)](http://file4.renrendoc.com/view11/M00/1B/3E/wKhkGWX__kKASxNfAAEnrgIcHLg7102.jpg)
![Python程序設(shè)計(jì)基礎(chǔ)項(xiàng)目化教程 課件 項(xiàng)目4 函數(shù)與模塊_第3頁(yè)](http://file4.renrendoc.com/view11/M00/1B/3E/wKhkGWX__kKASxNfAAEnrgIcHLg7103.jpg)
![Python程序設(shè)計(jì)基礎(chǔ)項(xiàng)目化教程 課件 項(xiàng)目4 函數(shù)與模塊_第4頁(yè)](http://file4.renrendoc.com/view11/M00/1B/3E/wKhkGWX__kKASxNfAAEnrgIcHLg7104.jpg)
![Python程序設(shè)計(jì)基礎(chǔ)項(xiàng)目化教程 課件 項(xiàng)目4 函數(shù)與模塊_第5頁(yè)](http://file4.renrendoc.com/view11/M00/1B/3E/wKhkGWX__kKASxNfAAEnrgIcHLg7105.jpg)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
筐魚(yú)梧領(lǐng)鳳峽匪跑腳凡輔乒蹤勿久褂舟嬰襲剪肚爹倫甄嘯鐐娟附卉態(tài)再罵廣東農(nóng)工商職業(yè)技術(shù)學(xué)院PPT模板-精美原創(chuàng)畢業(yè)論文答辯廣東農(nóng)工商職業(yè)技術(shù)學(xué)院PPT模板-精美原創(chuàng)畢業(yè)論文答辯項(xiàng)目4函數(shù)與模塊目錄|CONTENT1項(xiàng)目介紹2項(xiàng)目目標(biāo)3項(xiàng)目準(zhǔn)備4項(xiàng)目實(shí)施項(xiàng)目介紹項(xiàng)目背景程序設(shè)計(jì)語(yǔ)言中,函數(shù)是組織好的,可重復(fù)使用的,用來(lái)實(shí)現(xiàn)單一,或相關(guān)聯(lián)功能的代碼段。前面項(xiàng)目已經(jīng)接觸了一些Python提供的內(nèi)建函數(shù),比如print()??梢詫⒑瘮?shù)視為一段有名字的代碼,這類代碼在需要的地方以“函數(shù)名()”的形式調(diào)用。用戶也可以自己創(chuàng)建函數(shù),這被叫做用戶自定義函數(shù)。功能設(shè)計(jì)優(yōu)秀的函數(shù)能提高應(yīng)用的模塊性,和代碼的重復(fù)利用率。項(xiàng)目介紹項(xiàng)目規(guī)劃01熟練Python函數(shù)的定義和調(diào)用方法02掌握各類參數(shù),熟悉參數(shù)傳遞過(guò)程03熟悉Python模塊和包的概念及使用方法目錄|CONTENT1項(xiàng)目介紹2項(xiàng)目目標(biāo)3項(xiàng)目準(zhǔn)備4項(xiàng)目實(shí)施項(xiàng)目目標(biāo)知識(shí)目標(biāo)1熟悉Python函數(shù)的概念2掌握Python函數(shù)參數(shù)傳遞和返回值的原理3熟悉模塊、包的概念項(xiàng)目目標(biāo)能力目標(biāo)1掌握Python函數(shù)的定義和調(diào)用方法2熟練掌握參數(shù)的定義、傳遞方法,返回值的使用方法3正確使用import進(jìn)行包的相關(guān)操作目錄|CONTENT1項(xiàng)目介紹2項(xiàng)目目標(biāo)3項(xiàng)目準(zhǔn)備4項(xiàng)目實(shí)施項(xiàng)目準(zhǔn)備1.函數(shù)的定義數(shù)是為實(shí)現(xiàn)一個(gè)特定功能而組合在一起的語(yǔ)句集,可以用來(lái)定義可重用代碼、組織和簡(jiǎn)化代碼。函數(shù)定義格式如下:def函數(shù)名(形式參數(shù)):
函數(shù)體項(xiàng)目準(zhǔn)備2.函數(shù)的調(diào)用函數(shù)在定義時(shí)只是決定了函數(shù)的形式和功能。直到函數(shù)被調(diào)用時(shí),函數(shù)才會(huì)被執(zhí)行。調(diào)用函數(shù)的方式非常簡(jiǎn)單,其語(yǔ)法形式如下所示:函數(shù)名([參數(shù)列表])項(xiàng)目準(zhǔn)備3.形參與實(shí)參在函數(shù)定義中,函數(shù)名后面括號(hào)中列出的參數(shù)稱為形式參數(shù),簡(jiǎn)稱形參。如果形參的個(gè)數(shù)超過(guò)1個(gè),各參數(shù)之間用逗號(hào)隔開(kāi)。在定義函數(shù)時(shí),函數(shù)的形參不代表任何具體的值,只有在函數(shù)調(diào)用時(shí),才會(huì)有具體的值賦給形參。調(diào)用函數(shù)時(shí)傳入的參數(shù)稱為實(shí)際參數(shù),簡(jiǎn)稱實(shí)參。項(xiàng)目準(zhǔn)備4.函數(shù)的返回值函數(shù)的執(zhí)行結(jié)果通過(guò)返回語(yǔ)句return返回給調(diào)用者。函數(shù)調(diào)用時(shí)的參數(shù)傳遞實(shí)現(xiàn)了從函數(shù)外部向函數(shù)內(nèi)部輸入數(shù)據(jù),而函數(shù)的返回則解決了函數(shù)向外部輸出信息的問(wèn)題。如果一個(gè)函數(shù)的定義中沒(méi)有return語(yǔ)句,系統(tǒng)將自動(dòng)在函數(shù)體的末尾插入returnNone語(yǔ)句。#定義函數(shù)circle2,返回圓的面積defcircle2(r):#函數(shù)定義,r為形參area=3.14*r*rreturnarea#為返回值
#主程序r=3area=circle2(r)#函數(shù)調(diào)用,r為實(shí)參print("半徑為",r,"的圓面積為:",area)項(xiàng)目準(zhǔn)備5.特殊形式的參數(shù)當(dāng)調(diào)用函數(shù)時(shí),需要將實(shí)參傳遞給形參。參數(shù)傳遞時(shí)有兩種方式:位置參數(shù)和關(guān)鍵參數(shù)。位置參數(shù)是指按照參數(shù)的位置來(lái)傳遞,關(guān)鍵參數(shù)是指按照參數(shù)賦值的形式來(lái)傳遞。當(dāng)使用位置參數(shù)時(shí),實(shí)參和形參在順序、個(gè)數(shù)和類型上必須一一匹配。在函數(shù)調(diào)用中,通過(guò)“變量名=值”的“鍵-值”形式將實(shí)參傳遞給形參,使得參數(shù)可以不按順序來(lái)傳遞,讓函數(shù)參數(shù)的傳遞更加清晰、易用。采用這種方式傳遞的參數(shù)稱為關(guān)鍵參數(shù)。1)位置參數(shù)與關(guān)鍵參數(shù)項(xiàng)目準(zhǔn)備5.特殊形式的參數(shù)數(shù)的形參可以設(shè)置默認(rèn)值。這種形參通常稱為默認(rèn)參數(shù)。Python允許定義帶默認(rèn)參數(shù)的函數(shù),如果在調(diào)用函數(shù)時(shí)不為這些參數(shù)提供值,這些參數(shù)就使用默認(rèn)值;如果在調(diào)用時(shí)有實(shí)參,則將實(shí)參的值傳遞給形參,形參定義的默認(rèn)值將被忽略。具有默認(rèn)參數(shù)值的函數(shù)定義格式如下:2)默認(rèn)參數(shù)def函數(shù)名(非默認(rèn)參數(shù),形參名=默認(rèn)值,……):
函數(shù)體項(xiàng)目準(zhǔn)備5.特殊形式的參數(shù)在Python中,函數(shù)可以接收不定個(gè)數(shù)的參數(shù),即用戶可以給函數(shù)提供可變長(zhǎng)度的參數(shù)。這可以通過(guò)在形式參數(shù)前面使用標(biāo)識(shí)符“*”來(lái)實(shí)現(xiàn)。3)可變長(zhǎng)參數(shù)#函數(shù)定義defall_1(*args):print(args)#不管傳遞幾個(gè)參數(shù)到args,都是將接收的所有參數(shù)按照次序組合到一個(gè)元組上。#主程序all_1("a")#程序運(yùn)行結(jié)果('a',)all_1("a",2)#程序運(yùn)行結(jié)果('a',2)all_1("a",2,"b")#程序運(yùn)行結(jié)果('a',2,'b')項(xiàng)目準(zhǔn)備6.模塊按照代碼功能的不同,將代碼分門別類地放在不同的腳本文件中,這些腳本文件就稱為是模塊(Module)。用戶一旦創(chuàng)建了一個(gè)Python源文件,就可以作為一個(gè)模塊來(lái)使用,其不帶后綴的.py的文件名就是模塊名。項(xiàng)目準(zhǔn)備7.包為了方便管理,通常將程序文件(模塊)以特定目錄的形式進(jìn)行打包。作為包的目錄中必須至少包含一個(gè)名為_(kāi)_init__.py的文件,也可以包含一些模塊文件和作為子包的子目錄。作為子包的子目錄中同樣至少包含一個(gè)名為_(kāi)_init__.py的文件。文件__init__.py的內(nèi)容可以為空。__init__.py文件的主要作用為:(1)作為python中包與普通目錄的區(qū)別標(biāo)識(shí);(2)編寫代碼,定義類、函數(shù)、變量等對(duì)象;(3)定義__all__變量來(lái)確定采用frommoduleNameimport*時(shí)導(dǎo)入的模塊名稱。項(xiàng)目準(zhǔn)備8.庫(kù)及其安裝標(biāo)準(zhǔn)庫(kù)第三方庫(kù)項(xiàng)目準(zhǔn)備9.模塊的__name__屬性每個(gè)模塊都有一個(gè)__name__屬性(注意__name__兩端各有兩個(gè)下劃線),該屬性保存當(dāng)前模塊執(zhí)行過(guò)程中的名稱。當(dāng)一個(gè)程序模塊獨(dú)立運(yùn)行時(shí),該__name__屬性自動(dòng)被賦予值為_(kāi)_main__的字符串。如果一個(gè)程序模塊被其他程序通過(guò)import導(dǎo)入使用,則其__name__屬性自動(dòng)被賦予值為模塊名(文件名)的字符串。因此,可以通過(guò)在模塊中增加語(yǔ)句“if__name__=='__main__':”來(lái)判斷模塊當(dāng)前的運(yùn)行狀態(tài)。目錄|CONTENT1項(xiàng)目介紹2項(xiàng)目目標(biāo)3項(xiàng)目準(zhǔn)備4項(xiàng)目實(shí)施項(xiàng)目實(shí)施任務(wù)4.1猴子補(bǔ)丁為了解決原有系統(tǒng)的bug,或者增加新的功能,需要對(duì)系統(tǒng)進(jìn)行打補(bǔ)丁。補(bǔ)丁分為冷補(bǔ)丁和熱補(bǔ)丁兩種:冷補(bǔ)丁就是使用具有新功能的安裝包,重新安裝系統(tǒng)。熱補(bǔ)丁是在不重新安裝大版本的情況下,通過(guò)改變?cè)泻瘮?shù)代碼地址的方式,更新系統(tǒng)功能。建立“MonkeyPatch.py”文件,用于編寫Python實(shí)驗(yàn)程序。編寫任務(wù)代碼項(xiàng)目實(shí)施任務(wù)4.1猴子補(bǔ)丁defSum(a,b):#定義函數(shù)Sum print('Sum函數(shù)被調(diào)用!')#通過(guò)輸出信息以知道哪個(gè)函數(shù)被調(diào)用 returna+b#將a和b的求和結(jié)果返回defNewSum(*args):#定義函數(shù)NewSum print('NewSum函數(shù)被調(diào)用!')#通過(guò)輸出信息以知道哪個(gè)函數(shù)被調(diào)用 s=0#s用于保存求和結(jié)果,初始賦為0 foriinargs:#i取傳入的每一個(gè)參數(shù)值 s+=i#將i加到s上 returns#將保存求和結(jié)果的s返回Sum=NewSum#將NewSum賦給Sum,后面再調(diào)用Sum函數(shù),實(shí)際上就是執(zhí)行NewSum函數(shù)print(Sum(1,2,3,4,5))#調(diào)用Sum函數(shù)(實(shí)際是執(zhí)行NewSum)計(jì)算1至5的和并輸出執(zhí)行程序用鼠標(biāo)右鍵單擊右側(cè)編輯窗口,在菜單中選擇“Run‘python主程序所在文件名’”一項(xiàng)執(zhí)行編寫好的Python程序,本次實(shí)驗(yàn)文件名為“MonkeyPatch”。將在屏幕上輸出結(jié)果項(xiàng)目實(shí)施任務(wù)4.1猴子補(bǔ)丁項(xiàng)目實(shí)施任務(wù)4.2第三方模塊的獲取與安裝Python是一個(gè)流行的開(kāi)源項(xiàng)目,許多第三方開(kāi)發(fā)者也將其開(kāi)發(fā)的功能開(kāi)放、供其他開(kāi)發(fā)者在開(kāi)源協(xié)議下免費(fèi)使用。第三方模塊的獲取與安裝有多種方法,其中最推薦的一種方法是使用pip工具。本任務(wù)以用于科學(xué)計(jì)算的numpy模塊的安裝為例,介紹pip的使用方法。項(xiàng)目實(shí)施任務(wù)4.2第三方模塊的獲取與安裝選擇Windows開(kāi)始菜單,在“搜索程序和文件”框中輸入CMD,按回車鍵,打開(kāi)命令行控制臺(tái)窗口。在命令行窗口中輸入Python命令,按回車鍵,進(jìn)入Python交互式解釋器。此時(shí)用戶可以在提示符>>>下輸入命令或調(diào)用函數(shù),以命令行的方式交互式地使用Python解釋器項(xiàng)目實(shí)施任務(wù)4.2第三方模塊的獲取與安裝在提示符>>>下輸入:importnumpy,此時(shí)會(huì)得到如下錯(cuò)誤信息:項(xiàng)目實(shí)施任務(wù)4.2第三方模塊的獲取與安裝在提示符下輸入exit(),退出Python解釋器項(xiàng)目實(shí)施任務(wù)4.2第三方模塊的獲取與安裝確保系統(tǒng)聯(lián)網(wǎng),在控制臺(tái)下輸入pipinstallnumpy。系統(tǒng)就會(huì)自動(dòng)下載安裝包并完成安裝項(xiàng)目實(shí)施任務(wù)4.2第三方模塊的獲取與安裝再次輸入Python,進(jìn)入Python解釋器,并輸入importnumpy,系統(tǒng)不再報(bào)錯(cuò),表示模塊導(dǎo)入成功課后練習(xí)與技能訓(xùn)練一、填空題Python語(yǔ)言中使用函數(shù)分為兩個(gè)步驟:定義函數(shù)和
。Python語(yǔ)言中函數(shù)定義需要使用
關(guān)鍵字。
是定義函數(shù)時(shí)函數(shù)名后面的一對(duì)小括號(hào)中給出的參數(shù)列表。
是在調(diào)用函數(shù)時(shí)函數(shù)名后面的一對(duì)小括號(hào)中給出的參數(shù)列表。能夠?qū)⒁粋€(gè)函數(shù)的運(yùn)算結(jié)果返回到調(diào)用函數(shù)的位置,以使得可以繼續(xù)用該運(yùn)算結(jié)果再去參與其他運(yùn)算,此時(shí)則應(yīng)使用
語(yǔ)句。練習(xí)課后練習(xí)與技能訓(xùn)練一、填空題6.使用
將整個(gè)模塊導(dǎo)入,也可以使用
將模塊中的標(biāo)識(shí)符直接導(dǎo)入當(dāng)前環(huán)境,7.可以使用from模塊名import的方式導(dǎo)入一個(gè)模塊中的所有標(biāo)識(shí)符。8.定義一個(gè)包,就是創(chuàng)建一個(gè)文件夾并在該文件夾下創(chuàng)建一個(gè)
文件,文件夾的名字就是包名。9.
是指在運(yùn)行時(shí)動(dòng)態(tài)替換已有的代碼,而不需要修改原始代碼。練習(xí)課后練習(xí)與技能訓(xùn)練二、選擇題1.下列說(shuō)法中錯(cuò)誤的是()當(dāng)調(diào)用函數(shù)時(shí),如果沒(méi)有為某些形參傳遞對(duì)應(yīng)的實(shí)參,則這些形參會(huì)自動(dòng)使用默認(rèn)參數(shù)值在使用關(guān)鍵字參數(shù)調(diào)用函數(shù)時(shí),實(shí)參的傳遞順序可以與形參列表中形參的順序必須一致當(dāng)普通實(shí)參傳遞給形參后,如果在函數(shù)體中對(duì)形參值做修改,則該修改并不會(huì)影響實(shí)參,即實(shí)參值不會(huì)改變。如果實(shí)參是列表等對(duì)象時(shí),可在函數(shù)體中通過(guò)形參修改實(shí)參列表中對(duì)應(yīng)元素的值。練習(xí)課后練習(xí)與技能訓(xùn)練二、選擇題2.下列關(guān)于拆分參數(shù)列表的說(shuō)法正確的是()A.列表、元組拆分出來(lái)的結(jié)果作為位置參數(shù),字典拆分出來(lái)的結(jié)果作為關(guān)鍵字參數(shù)B.列表、元組和字典拆分出來(lái)的結(jié)果都作為關(guān)鍵字參數(shù)C.列表、元組和字典拆分出來(lái)的結(jié)果都作為位置參數(shù)D.列表、元組拆分出來(lái)的結(jié)果作為關(guān)鍵字參數(shù),而字典拆分出來(lái)的結(jié)果作為位置參數(shù)練習(xí)課后練習(xí)與技能訓(xùn)練三、簡(jiǎn)答題1.寫出下面程序段的輸出結(jié)果。練習(xí)defModifyVal(x,y):z=xx=yy=zdefModifyListElement(ls,idx,val):ls[idx]=vala,b=3,5print(a,b)ModifyVal(a,b)print(a,b)c=[7,8,9]print(c)ModifyListElement(c,1,6)print(c)課后練習(xí)與技能訓(xùn)練三、簡(jiǎn)答題2.寫出下面程序段的輸出結(jié)果。練習(xí)defCircleInfo(radius,color='red'):print('半徑:%d,顏色:%s'%(radius,color))CircleInfo(10)CircleInfo(20,color='green')CircleInfo(color='blue',radius=30)課后練習(xí)與技能訓(xùn)練三、簡(jiǎn)答題函數(shù)Sum的
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 施工單位關(guān)于施工進(jìn)度報(bào)告的工作聯(lián)系函
- 跨越障礙培養(yǎng)學(xué)生創(chuàng)新能力的有效措施
- 跨領(lǐng)域視角下的安全工作與生產(chǎn)計(jì)劃整合
- DB3702T 45.1-2024地理標(biāo)志產(chǎn)品 平度牛肉 第1部分:生產(chǎn)技術(shù)規(guī)程
- 二手貨物買賣合同范文
- 中外合資企業(yè)職工住房公積金合同范本
- 中外合作經(jīng)營(yíng)企業(yè)合同范本
- 中外合資飯店租賃合同模板
- 專利實(shí)施許可合同協(xié)議
- 中外原材料供應(yīng)合同樣本
- 南方日?qǐng)?bào)圖片管理系統(tǒng)開(kāi)發(fā)項(xiàng)目進(jìn)度管理研究任務(wù)書
- 《建筑工程設(shè)計(jì)文件編制深度規(guī)定》(2022年版)
- 我國(guó)大型成套設(shè)備出口現(xiàn)狀、發(fā)展前景及政策支持研究
- 河南省鄭州市2023-2024學(xué)年高一下學(xué)期6月期末數(shù)學(xué)試題(無(wú)答案)
- 七年級(jí)數(shù)學(xué)垂線1
- 2024年最新全國(guó)交管12123駕駛證學(xué)法減分(學(xué)法免分)考試題庫(kù)附答案
- JTG C10-2007 公路勘測(cè)規(guī)范
- 糖尿病酮癥酸中毒護(hù)理查房演示課件
- 拼音練習(xí)字帖(打印版)
- 藥店信息處理與保密技巧
- 40篇短文搞定高中英語(yǔ)3500單詞
評(píng)論
0/150
提交評(píng)論