1.函數(shù)的返回值
- 函數(shù)返回值就是函數(shù)執(zhí)行以后返回的結(jié)果
- 通過return來指定函數(shù)的返回值
-
return后面可以跟任意對象肮之、返回值甚至可以是一個函數(shù)
2.文檔字符串
- help()是Python中內(nèi)置函數(shù)堡赔,通過help()函數(shù)可以查詢Python中函數(shù)的?法
-
在定義函數(shù)時漾稀,可以在函數(shù)內(nèi)部編寫?檔字符串谚中,?檔字符串就是對函數(shù)的說明
3.函數(shù)作用域
- 作用域(scope):是指變量生效的區(qū)域
-
在python中一共有兩種作用域
(1)全局作用域
甸怕。全局作用域在程序執(zhí)行時創(chuàng)建博敬,在程序執(zhí)行結(jié)束時銷毀
。所有函數(shù)以外的區(qū)域都是全局作用域
呆奕。在全局作用域中定義的變量都是全局變量养晋,全局變量可以在程序的任意位置進(jìn)行訪問
(2)函數(shù)作用域
。函數(shù)作用域在函數(shù)調(diào)用時創(chuàng)建梁钾,在調(diào)用結(jié)束時銷毀
绳泉。函數(shù)每調(diào)用一次就會產(chǎn)生一個新的函數(shù)作用域
。在函數(shù)作用域中定義的變量都是局部變量姆泻,它只能在函數(shù)內(nèi)部被訪問
4.命名空間
- 命名空間實(shí)際上就是一個字典零酪,一個專門用來存儲變量的字典
- locals()用來獲取當(dāng)前作用域的命名空間
-
如果在全局作用域中調(diào)用locals()來獲取全局命名空間,如果在函數(shù)作用域中調(diào)用locals()來獲取函數(shù)命名空間
5.遞歸函數(shù)
遞歸是解決問題的一種方式拇勃,它的整體思想蛾娶,是將一個大的問題分解成一個個小問題,直到問題無法分解時潜秋,再去解決問題
-
遞歸式函數(shù)有2個條件
(1)基線條件:問題可以被分解為最小問題,當(dāng)滿足基線條件時胎许,遞歸就不再執(zhí)行了(2)遞歸條件:可以將問題繼續(xù)分解的條件
6.遞歸函數(shù)的練習(xí)
-
分析過程