python3 函数注意要点
一、定義一個(gè)函數(shù):
1 def test(): #用def關(guān)鍵詞開頭 2 print('*****') 3 4 def test2(a,b): #a,b為形參 5 print(a,b) 6 return a,b # return 返回方法運(yùn)行的結(jié)果 可以是返回函數(shù)、元組、字符串、列表、字典等;返回后,得到一個(gè)元組7 test2(1,2) # 回調(diào)函數(shù)
二、需要注意的地方:
回調(diào)時(shí)帶參數(shù)的關(guān)鍵點(diǎn):
def定義函數(shù)的時(shí)候,括號(hào)里面的變量叫形參,引用內(nèi)存空間;
調(diào)用函數(shù)的時(shí)候,括號(hào)里面的變量叫實(shí)參,內(nèi)存數(shù)據(jù);
形如(variable1,variable2),叫位置參數(shù);
形如(variable1=value1,variable2=value2),叫關(guān)鍵字參數(shù);
關(guān)鍵字參數(shù)一定要在位置參數(shù)后面;
沒特別指明,形參和實(shí)參必須一一對(duì)應(yīng),多一個(gè)少一個(gè)都報(bào)錯(cuò);
?
全局變量與局部變量:
函數(shù)體外定義的變量稱為全局變量,在函數(shù)體內(nèi)也生效,前提是先定義全局變量,后定義函數(shù);
函數(shù)體內(nèi)定義的變量稱為局部變量,只在當(dāng)前函數(shù)體內(nèi)生效;
?
非固定參數(shù),當(dāng)傳入的參數(shù)不確定個(gè)數(shù)的時(shí)候:
非固定參數(shù)*args,傳入的參數(shù)變成元組,元組可為空;
非固定參數(shù)**kwargs,傳入的參數(shù)變成字典;
*args與**kwargs可同時(shí)使用
?
嵌套函數(shù),函數(shù)中調(diào)用函數(shù),但是只能調(diào)用同級(jí)的函數(shù),不能隔級(jí)調(diào)用
?
遞歸函數(shù)
***必須有一個(gè)明確的結(jié)束條件
每遞歸一次,問題規(guī)模比上一次都應(yīng)有減少
效率不高,下面這個(gè)越到后面效率越低
?
匿名函數(shù):高階函數(shù),變量指向函數(shù),函數(shù)的參數(shù)能接收變量,那么一個(gè)函數(shù)就可以接收另一個(gè)函數(shù)作為參數(shù),這種函數(shù)就稱之為高階函數(shù)。
?
轉(zhuǎn)載于:https://www.cnblogs.com/zjoe-life/p/10564241.html
總結(jié)
以上是生活随笔為你收集整理的python3 函数注意要点的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NO.152 移动互联时代如何做企业营销
- 下一篇: 调试你的Python代码