91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

一個簡單實例,理解python閉包

發布時間:2020-08-10 14:52:10 來源:ITPUB博客 閱讀:183 作者:云小蟲2019 欄目:編程語言

問題 : 模擬一個存錢罐

有兩個小朋友,小明,小唐。 年初,三位小朋友的媽媽給他們一定壓歲錢。小明有100壓歲錢,小唐有50。然后,每月他們不定期的將自己零花錢的一部分存起來。

代碼:Python閉包

##構造閉包
def factory_save(base_money):
    def save(add_money=0):
        nonlocal base_money
        sum_money = base_money + add_money
        base_money = sum_money
        return sum_money
    return save
##實例化(壓歲錢不同以區別)
xiaoming_save = factory_save(100)
xiaotang_save = factory_save(50)
#小明存錢
##存錢
xiaoming_save(20)
##顯示當前存款
print(xiaoming_save())
#小唐存錢
##存錢
xiaotang_save(5)
##顯示當前存款
print(xiaotang_save())

說明 :閉包=工廠+機器模板(函數+環境變量)

閉包,就是一個函數,引用了函數外定義的變量,可以叫著自由變量或者環境變量。這里就是函數save,引用了外面定義的base_money變量。所以閉包,可以簡單理解為一個函數+環境變量的封裝。

外面的函數factory_save,就像一個生產存錢罐的工廠,能生產一個個模板(save),同時,在生產這個模板時,能夠加入一些環境變量,如果顏色,材質等。這里簡單用的用壓歲錢的金額不同表示。

生產成的模板實例化后,就是一個個存錢罐,可以是小明的存錢罐,小唐的存錢罐。

這里需要注意是的,當環境變量帶入模板函數后,這個變量的作用域就在這個函數,并且能夠在內存中長存,也就起到了累加的作用。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

淳安县| 南京市| 鸡东县| 汨罗市| 莒南县| 凭祥市| 那曲县| 丁青县| 大港区| 萨迦县| 西华县| 肥东县| 翁牛特旗| 临潭县| 衡南县| 华容县| 新宾| 利川市| 定西市| 榆树市| 洪雅县| 报价| 固镇县| 临沭县| 马山县| 和田县| 卓尼县| 伊宁市| 富川| 广南县| 徐闻县| 崇州市| 益阳市| 郑州市| 棋牌| 康保县| 呼图壁县| 民县| 常山县| 昭苏县| 邓州市|