1. 函數(shù)的返回值
返回值就是函數(shù)執(zhí)行以后返回的結(jié)果
通過(guò)return來(lái)指定函數(shù)的返回值
return后面可以跟任意對(duì)象耳胎,返回值甚至可以是一個(gè)函數(shù)
2. 文檔字符串
help()是Python中內(nèi)置函數(shù),通過(guò)help()函數(shù)可以查詢Python中函數(shù)的用法
在定義函數(shù)時(shí),可以在函數(shù)內(nèi)部編寫文檔字符串却舀,文檔字符串就是對(duì)函數(shù)的說(shuō)明
3. 函數(shù)的作用域
作用域(scope)
作用域指的是變量生效的區(qū)域
在Python中一共有兩種作用域
全局作用域
全局作用域在程序執(zhí)行時(shí)創(chuàng)建慎式,在程序執(zhí)行結(jié)束時(shí)銷毀
所有函數(shù)以外的區(qū)域都是全局作用域
在全局作用域中定義的變量,都是全局變量,全局變量可以在程序的任意位置進(jìn)行訪問(wèn)
函數(shù)作用域
函數(shù)作用域在函數(shù)調(diào)用時(shí)創(chuàng)建抡医,在調(diào)用結(jié)束時(shí)銷毀
函數(shù)每調(diào)用一次就會(huì)產(chǎn)生一個(gè)新的函數(shù)作用域
在函數(shù)作用域中定義的變量,都是局部變量早敬,它只能在函數(shù)內(nèi)部被訪問(wèn)
4. 命名空間
命名空間實(shí)際上就是一個(gè)字典忌傻,是一個(gè)專門用來(lái)存儲(chǔ)變量的字典
locals()用來(lái)獲取當(dāng)前作用域的命名空間
如果在全局作用域中調(diào)用locals()則獲取全局命名空間,如果在函數(shù)作用域中調(diào)用locals()則獲取函數(shù)命名空間
返回值是一個(gè)字典
5. 遞歸函數(shù)
遞歸是解決問(wèn)題的一種方式搞监,它的整體思想水孩,是將一個(gè)大問(wèn)題分解為一個(gè)個(gè)的小問(wèn)題,直到問(wèn)題無(wú)法分解時(shí)琐驴,在去解決問(wèn)題
遞歸式函數(shù)有2個(gè)條件
1. 基線條件 問(wèn)題可以被分解為最小問(wèn)題俘种,當(dāng)滿足基線條件時(shí),遞歸就不執(zhí)行了
2. 遞歸條件 可以將問(wèn)題繼續(xù)分解的條件