日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:python閉包函數(shù)是什么

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

創(chuàng)新互聯(lián)公司專注于中小企業(yè)網(wǎng)站建設(shè)、策劃制作、運(yùn)行維護(hù),主要提供一站式的企業(yè)網(wǎng)站建設(shè)服務(wù)。建站類型:公司網(wǎng)站建設(shè)、品牌網(wǎng)站建設(shè)、成都外貿(mào)網(wǎng)站制作獨(dú)立站等。創(chuàng)新互聯(lián)不是單一的建網(wǎng)站,而是結(jié)合企業(yè)的建站目標(biāo)去規(guī)劃網(wǎng)站怎么建,如何利于運(yùn)營,尋求適合的建站方案。其次,網(wǎng)站后臺操作的便捷性也是網(wǎng)站制作過程中的重點(diǎn),創(chuàng)新互聯(lián)公司的網(wǎng)站后臺簡單便捷,真正實(shí)現(xiàn)了零基礎(chǔ)操作。

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ù)中的局部變量僅在函數(shù)的執(zhí)行期間可用,一旦 print_msg() 執(zhí)行過后,我們會認(rèn)為 msg變量將不再可用。然而,在這里我們發(fā)現(xiàn) print_msg 執(zhí)行完之后,在調(diào)用 another 的時候 msg 變量的值正常輸出了,這就是閉包的作用,閉包使得局部變量在函數(shù)外被訪問成為可能。(更多學(xué)習(xí)內(nèi)容,請點(diǎn)擊Python學(xué)習(xí)網(wǎng))

看完這個例子,我們再來定義閉包,維基百科上的解釋是:

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

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

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


分享標(biāo)題:創(chuàng)新互聯(lián)Python教程:python閉包函數(shù)是什么
標(biāo)題網(wǎng)址:http://www.dlmjj.cn/article/dpggggo.html