Python編程基礎(chǔ)與應(yīng)用課件第4章函數(shù)模塊與類FINAL_第1頁
Python編程基礎(chǔ)與應(yīng)用課件第4章函數(shù)模塊與類FINAL_第2頁
Python編程基礎(chǔ)與應(yīng)用課件第4章函數(shù)模塊與類FINAL_第3頁
Python編程基礎(chǔ)與應(yīng)用課件第4章函數(shù)模塊與類FINAL_第4頁
Python編程基礎(chǔ)與應(yīng)用課件第4章函數(shù)模塊與類FINAL_第5頁
已閱讀5頁,還剩75頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1 函數(shù)、模塊與類4.1 函數(shù)的定義函數(shù)定義規(guī)則1)函數(shù)代碼塊以def關(guān)鍵詞開頭,后接函數(shù)標識符名稱和圓括號( )。2)任何傳入?yún)?shù)和自變量必須放在圓括號中間,圓括號之間可以用于定義參數(shù)。3)函數(shù)的第一行語句可以選擇性地使用文檔字符串,用于存放函數(shù)說明。4)函數(shù)內(nèi)容以冒號起始,并且統(tǒng)一縮進。24.1 函數(shù)的定義函數(shù)定義規(guī)則34.1 函數(shù)的定義函數(shù)定義規(guī)則44.1 函數(shù)的定義54.1 函數(shù)的定義函數(shù)的形式參數(shù)和實際參數(shù)(1)形式參數(shù):在定義函數(shù)時,函數(shù)名后面括號中的參數(shù)就是形式參數(shù),例如:#定義函數(shù)時,這里的函數(shù)參數(shù) obj 就是形式參數(shù)def demo(obj): print(obj)64.1

2、 函數(shù)的定義函數(shù)的形式參數(shù)和實際參數(shù)(2)實際參數(shù):在調(diào)用函數(shù)時,函數(shù)名后面括號中的參數(shù)稱為實際參數(shù),也就是函數(shù)的調(diào)用者給函數(shù)的參數(shù)。例如:a = Python學習小組#調(diào)用已經(jīng)定義好的 demo 函數(shù),此時傳入的函數(shù)參數(shù) a 就是實際參數(shù)demo(a)74.1 函數(shù)的定義函數(shù)的形式參數(shù)和實際參數(shù)根據(jù)實際參數(shù)的類型不同,函數(shù)參數(shù)的傳遞方式可分為 2 種,分別為值傳遞和引用(地址)傳遞:(1)值傳遞:適用于實參類型為不可變類型(字符串、數(shù)字、元組);(2)引用(地址)傳遞:適用于實參類型為可變類型(列表,字典)。84.1 函數(shù)的定義函數(shù)的形式參數(shù)和實際參數(shù)94.1 函數(shù)的定義函數(shù)的形式參數(shù)和實際

3、參數(shù)104.1 函數(shù)的定義值傳遞機制114.1 函數(shù)的定義值傳遞機制124.1 函數(shù)的定義引用傳遞機制134.1 函數(shù)的定義引用傳遞機制144.1 函數(shù)的定義函數(shù)的關(guān)鍵字參數(shù)154.1 函數(shù)的定義函數(shù)的默認值參數(shù)164.1 函數(shù)的定義函數(shù)的默認值參數(shù)174.1 函數(shù)的定義函數(shù)的默認值參數(shù)184.1 函數(shù)的定義None返回值常量 None(N 必須大寫)。和 False 不同,它不表示 0,也不表示空字符串,而表示“沒有值”,也就是空值。這里的空值并不代表空對象,即 None 和 、“” 不同。None有自己的數(shù)據(jù)類型,可以在使用 type() 函數(shù)查看它的類型,屬于 NoneType 類型。N

4、one 常用于 assert、判斷以及函數(shù)無返回值的情況。比如使用 print() 函數(shù)輸出數(shù)據(jù),其實該函數(shù)的返回值就是 None。因為它的功能是在屏幕上顯示文本,根本不需要返回任何值,所以 print() 就返回 None。對于所有沒有 return 語句的函數(shù)定義,Python 都會在末尾加上return None,使用不帶值的 return 語句(也就是只有 return 關(guān)鍵字本身),那么就返回 None。194.1 函數(shù)的定義None返回值204.1 函數(shù)的定義局部變量在函數(shù)內(nèi)部定義的變量,它的作用域也僅限于函數(shù)內(nèi)部,出了函數(shù)就不能使用了,將這樣的變量稱為局部變量(Local Var

5、iable)。當函數(shù)被執(zhí)行時,Python 會為其分配一塊臨時的存儲空間,所有在函數(shù)內(nèi)部定義的變量,都會存儲在這塊空間中。而在函數(shù)執(zhí)行完畢后,這塊臨時存儲空間隨即會被釋放并回收,該空間中存儲的變量自然也就無法再被使用。214.1 函數(shù)的定義局部變量224.1 函數(shù)的定義全局變量234.1 函數(shù)的定義全局變量244.1 函數(shù)的定義為函數(shù)提供說明文檔254.2 函數(shù)的高級應(yīng)用匿名函數(shù)lambda表達式264.2 函數(shù)的高級應(yīng)用匿名函數(shù)lambda表達式274.2 函數(shù)的高級應(yīng)用閉包函數(shù)284.2 函數(shù)的高級應(yīng)用遞歸函數(shù)(1)必須有一個明確的結(jié)束條件。(2)每次進入更深一層遞歸時,問題規(guī)模相比上次遞

6、歸都應(yīng)有所減少。(3)相鄰兩次重復(fù)之間有緊密的聯(lián)系,前一次要為后一次做準備(通常前一次的輸出就作為后一次的輸入)。(4)遞歸效率不高,遞歸層次過多會導(dǎo)致棧溢出,因為函數(shù)調(diào)用是通過棧(stack)這種數(shù)據(jù)結(jié)構(gòu)實現(xiàn)的,每當進入一個函數(shù)調(diào)用,棧就會加一層棧幀,每當函數(shù)返回,棧就會減一層棧幀。由于棧的大小不是無限的,所以,遞歸調(diào)用的次數(shù)過多,會導(dǎo)致棧溢出。294.2 函數(shù)的高級應(yīng)用遞歸函數(shù)304.2 函數(shù)的高級應(yīng)用遞歸函數(shù)314.2 函數(shù)的高級應(yīng)用遞歸函數(shù)324.3 類與對象對象的引入334.3 類與對象對象的引入344.3 類與對象對象的常用術(shù)語354.3 類與對象類的定義364.3 類與對象類和對

7、象的關(guān)系374.3 類與對象類的構(gòu)造方法384.3 類與對象類的構(gòu)造方法394.3 類與對象類的構(gòu)造方法404.3 類與對象類的構(gòu)造方法414.3 類與對象類的構(gòu)造方法424.3 類與對象類的構(gòu)造方法434.3 類與對象property() 函數(shù)和property 裝飾器444.3 類與對象property() 函數(shù)和property 裝飾器454.3 類與對象property() 函數(shù)和property 裝飾器464.3 類與對象property() 函數(shù)和property 裝飾器474.3 類與對象property() 函數(shù)和property 裝飾器484.3 類與對象property()

8、 函數(shù)和property 裝飾器494.4類的封裝與繼承封裝504.4類的封裝與繼承封裝514.4類的封裝與繼承封裝524.4類的封裝與繼承繼承534.4類的封裝與繼承繼承544.4類的封裝與繼承繼承554.4類的封裝與繼承多態(tài)564.4類的封裝與繼承多態(tài)574.5 模塊與庫使用 import來導(dǎo)入模塊的語法格式584.5 模塊與庫使用 import來導(dǎo)入模塊的語法格式594.5 模塊與庫604.5 模塊與庫614.5 模塊與庫624.5 模塊與庫datetime模塊634.5 模塊與庫datetime模塊644.5 模塊與庫datetime模塊654.5 模塊與庫datetime模塊664.

9、5 模塊與庫datetime模塊674.5 模塊與庫datetime模塊684.5 模塊與庫time模塊time.localtime(secs):將一個時間戳轉(zhuǎn)換為當前時區(qū)的struct_time。secs參數(shù)未提供,則以當前時間為準。time.gmtime(secs):和localtime()方法類似,gmtime()方法是將一個時間戳轉(zhuǎn)換為UTC時區(qū)(0時區(qū))的struct_time。 time.time():返回當前時間的時間戳。time.mktime(t):將一個struct_time轉(zhuǎn)化為時間戳。time.sleep(secs):線程推遲指定的時間運行。單位為秒。time.ascti

10、me(t):把一個表示時間的元組或者struct_time表示為這種形式:SunOct1823:21:052020。如果沒有參數(shù),將會將time.localtime()作為參數(shù)傳入。694.5 模塊與庫time模塊time.ctime(secs):把一個時間戳(按秒計算的浮點數(shù))轉(zhuǎn)化為time.asctime()的形式。如果參數(shù)未給或者為None的時候,將會默認time.time()為參數(shù)。它的作用相當于time.asctime(time.localtime(secs)。time.strftime(format,t):把一個代表時間的元組或者struct_time(如由time.localtime()和time.gmtime()返回)轉(zhuǎn)化為格式化的時間字符串。如果t未指定,將傳入time.localtime()。如果元組中任何一個元素越界,ValueError的錯誤將會被拋出。time.strptime(string,format):把一個格式化時間字符串轉(zhuǎn)化為struct_time。實際上它和strftime()是逆操作。704.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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論