99偷拍视频精品区一区二,口述久久久久久久久久久久,国产精品夫妇激情啪发布,成人永久免费网站在线观看,国产精品高清免费在线,青青草在线观看视频观看,久久久久久国产一区,天天婷婷久久18禁,日韩动漫av在线播放直播

python中閉包是什么意思-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!

創(chuàng)新互聯(lián)公司是一家專注于網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),清豐網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:清豐等地區(qū)。清豐做網(wǎng)站價(jià)格咨詢:028-86922220

小編給大家分享一下python中閉包是什么意思,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

定義閉包,維基百科上的解釋是:

在計(jì)算機(jī)科學(xué)中,閉包(Closure)是詞法閉包(Lexical Closure)的簡(jiǎn)稱,是引用了自由變量的函數(shù)。這個(gè)被引用的自由變量將和這
個(gè)函數(shù)一同存在,即使已經(jīng)離開了創(chuàng)造它的環(huán)境也不例外。所以,有另一種說法認(rèn)為閉包是由函數(shù)和與其相關(guān)的引用環(huán)境組合而成的實(shí)
體。

這里的 another 就是一個(gè)閉包,閉包本質(zhì)上是一個(gè)函數(shù),它有兩部分組成,printer 函數(shù)和變量 msg。閉包使得這些變量的值始終保存在內(nèi)存中。

閉包,顧名思義,就是一個(gè)封閉的包裹,里面包裹著自由變量,就像在類里面定義的屬性值一樣,自由變量的可見范圍隨同包裹,哪里可以訪問到這個(gè)包裹,哪里就可以訪問到這個(gè)自由變量。

函數(shù)身為第一類對(duì)象,它可以作為函數(shù)的返回值返回,現(xiàn)在我們來考慮如下的例子:

def print_msg():
    # print_msg 是外圍函數(shù)
    msg = "zen of python"
    def printer():
        # printer 是嵌套函數(shù)
        print(msg)
    return printeranother = print_msg()# 輸出 zen of pythonanother()

這段代碼和前面例子的效果完全一樣,同樣輸出 "zen of python"。不同的地方在于內(nèi)部函數(shù) printer 直接作為返回值返回了。

一般情況下,函數(shù)中的局部變量?jī)H在函數(shù)的執(zhí)行期間可用,一旦 print_msg() 執(zhí)行過后,我們會(huì)認(rèn)為 msg變量將不再可用。然而,在這里我們發(fā)現(xiàn) print_msg 執(zhí)行完之后,在調(diào)用 another 的時(shí)候 msg 變量的值正常輸出了,這就是閉包的作用,閉包使得局部變量在函數(shù)外被訪問成為可能。

看完了這篇文章,相信你對(duì)python中閉包是什么意思有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝各位的閱讀!

新聞名稱:python中閉包是什么意思-創(chuàng)新互聯(lián)
網(wǎng)站URL:http://www.yijiale78.com/article30/jjsso.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計(jì)公司做網(wǎng)站品牌網(wǎng)站建設(shè)網(wǎng)站設(shè)計(jì)公司微信公眾號(hào)用戶體驗(yàn)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司