久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Python3 自學(xué)第11天:def 函數(shù)

 靜幻堂 2019-03-02
極客干貨 2019-03-01 00:20:03

前面我們了解了Python的流程控制,,今天我們開始學(xué)習(xí)下python中函數(shù)function,;

1 函數(shù)的定義

函數(shù)是一段實(shí)現(xiàn)單一功能的代碼段,可以提高應(yīng)用的模塊性和代碼的重用率,。前面我們已經(jīng)接觸過一些Python的內(nèi)置函數(shù),,比如:

print(),input(),len(),type(),id()等等

我們可以使用def關(guān)鍵字自定義函數(shù) ,格式如下:

def 函數(shù)名 (參數(shù)列表):
函數(shù)體

Python 標(biāo)識(shí)符的命名遵循駝峰命名法,,即包含多個(gè)單詞時(shí)首字母需要大寫,,其余字母小寫;也可以使用下劃線( _ )把每個(gè)單詞分開,,字母全部小寫,;為了提高代碼的可讀性,變量名,,函數(shù)名,,類名等都需要遵守駝峰命名規(guī)則。

Python3 自學(xué)第11天:def 函數(shù)

注意,,PEP 8 規(guī)范建議函數(shù)在定義和調(diào)用時(shí),,代碼前面需要空兩行。

使用return關(guān)鍵字可以返回一個(gè)值,,也可以同時(shí)返回多個(gè)值(這個(gè)厲害了),;返回多個(gè)值時(shí)會(huì)封裝進(jìn)一個(gè)元組tuple里。函數(shù)可以有返回值,,也可以沒有返回值,;

Python3 自學(xué)第11天:def 函數(shù)

定義一個(gè)空函數(shù),實(shí)例代碼:

Python3 自學(xué)第11天:def 函數(shù)

pass語句一般在函數(shù)或者類里面出現(xiàn)的比較多,,如果你的代碼實(shí)現(xiàn)暫時(shí)沒想好怎么寫的話,,可以用pass來代替,如果你留空的話程序是會(huì)報(bào)錯(cuò)的,。

2 函數(shù)傳參,,參數(shù)可以是各種對(duì)象,參數(shù)的類型大概分為這幾種:

必需參數(shù):函數(shù)調(diào)用時(shí)參數(shù)的順利和數(shù)量必須和聲明時(shí)的一致,,否則是會(huì)報(bào)錯(cuò)的,。

關(guān)鍵字參數(shù):函數(shù)調(diào)用時(shí)參數(shù)的順序與聲明時(shí)可以不一致,因?yàn)?Python 解釋器能夠用參數(shù)名匹配參數(shù)值,。

默認(rèn)參數(shù):調(diào)用函數(shù)時(shí)如果沒有傳遞參數(shù),,則會(huì)使用默認(rèn)參數(shù),默認(rèn)參數(shù)必須放在最后面,,否則會(huì)報(bào)

動(dòng)態(tài)參數(shù):當(dāng)需要傳遞更多的參數(shù)時(shí)有兩種方式,,一種是*一個(gè)星參數(shù),表示參數(shù)是以元組形式傳遞進(jìn)來 ,另外一種是 **兩個(gè)星參數(shù),,表示參數(shù)是以字典形式傳遞進(jìn)來,;

實(shí)例代碼:

Python3 自學(xué)第11天:def 函數(shù)
Python3 自學(xué)第11天:def 函數(shù)
Python3 自學(xué)第11天:def 函數(shù)
Python3 自學(xué)第11天:def 函數(shù)

3 匿名函數(shù),Python使用lambda表達(dá)式來創(chuàng)建匿名函數(shù),,形式如下:

lambda 參數(shù)列表:表達(dá)式
Python3 自學(xué)第11天:def 函數(shù)
Python3 自學(xué)第11天:def 函數(shù)

4 變量作用域 LEGB

L (Local) 局部作用域

E (Enclosing) 閉包函數(shù)外的函數(shù)中

G (Global) 全局作用域

B (Built - in) 內(nèi)置作用域(內(nèi)置函數(shù)所在模塊的范圍)

變量作用域查找規(guī)則:L –> E –> G –>B

即在局部找不到,,便會(huì)去局部外的局部找(例如閉包),再找不到就會(huì)去全局找,,再者去內(nèi)置中找,。實(shí)例如下:

Python3 自學(xué)第11天:def 函數(shù)

在函數(shù)嵌套中內(nèi)層函數(shù)func_inner() 就是一個(gè)閉包函數(shù)。

5 全局變量和局部變量:

定義在函數(shù)內(nèi)部的變量擁有一個(gè)局部作用域,,定義在函數(shù)外的擁有全局作用域,。

局部變量只能在其被聲明的函數(shù)內(nèi)部訪問,而全局變量可以在整個(gè)程序范圍內(nèi)訪問,。

調(diào)用函數(shù)時(shí),,所有在函數(shù)內(nèi)聲明的變量名稱都將被加入到作用域中。

Python3 自學(xué)第11天:def 函數(shù)

當(dāng)內(nèi)部作用域想修改外部作用域的變量時(shí),,可以用global和nonlocal關(guān)鍵字,,實(shí)例代碼:

Python3 自學(xué)第11天:def 函數(shù)

如果要修改嵌套作用域(enclosing 作用域,外層非全局作用域)中的變量則需要 nonlocal 關(guān)鍵字

Python3 自學(xué)第11天:def 函數(shù)

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多