色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

Python新手如何進行閉包時綁定變量操作

瀏覽:92日期:2022-07-23 18:41:38

搞不清楚在閉包(closures)中Python是怎樣綁定變量的

看這個例子:

>>> def create_multipliers():... return [lambda x : i * x for i in range(5)]>>> for multiplier in create_multipliers():... print multiplier(2)...

期望得到下面的輸出:

0

2

4

6

8

但是實際上得到的是:

8

8

8

8

8

實例擴展:

# coding=utf-8__author__ = ’xiaofu’# 解釋參考 http://docs.python-guide.org/en/latest/writing/gotchas/#late-binding-closuresdef closure_test1(): ''' 每個closure的輸出都是同一個i值 :return: ''' closures = [] for i in range(4):def closure(): print('id of i: {}, value: {} '.format(id(i), i)) closures.append(closure) # Python’s closures are late binding. # This means that the values of variables used in closures are looked up at the time the inner function is called. for c in closures: c()def closure_test2(): def make_closure(i): def closure(): print('id of i: {}, value: {} '.format(id(i), i)) return closure closures = [] for i in range(4): closures.append(make_closure(i)) for c in closures: c()if __name__ == ’__main__’: closure_test1() closure_test2()

輸出:

id of i: 10437280, value: 3 id of i: 10437280, value: 3 id of i: 10437280, value: 3 id of i: 10437280, value: 3 id of i: 10437184, value: 0 id of i: 10437216, value: 1 id of i: 10437248, value: 2 id of i: 10437280, value: 3

到此這篇關于Python新手如何進行閉包時綁定變量操作的文章就介紹到這了,更多相關Python閉包時綁定變量實例內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 一级特黄爽大片刺激 | 欧美一级毛片在线一看 | 玖玖啪| 成人手机视频在线观看 | 国产成人午夜性a一级毛片 国产成人午夜性视频影院 国产成人香蕉久久久久 | 成年人福利视频 | 波多野结衣视频免费在线观看 | 九九在线精品视频播放 | 欧美成人午夜不卡在线视频 | 在线视频一二三区2021不卡 | 欧美一区二区三区不卡免费观看 | 欧美日韩综合网在线观看 | 亚洲欧美精品中文字幕 | 女初高中福利视频在线观看 | 亚洲精品综合一区二区 | 在线国产网站 | 国产精品一区在线免费观看 | 一级毛片免费在线观看网站 | 一区 在线播放 | 日本高清色本在线www游戏 | 国产精品一二三区 | 日韩欧美在线播放视频 | 亚洲一区二区三区免费看 | 欧美日本高清视频在线观看 | 美女张开腿给男生桶下面视频 | 免费人成激情视频在线观看冫 | 大量愉拍情侣在线视频 | 免费毛片播放 | 国产在线91精品天天更新 | 欧美亚洲国产片在线观看 | 免费看特级毛片 | 99热久久国产精品一区 | 日韩在线精品 | 亚洲线精品久久一区二区三区 | 韩日一级片| 一级片免费观看视频 | 亚洲天堂在线视频观看 | 国产精品亚洲综合久久 | 国产高清一区二区三区 | 一级毛片成人免费看免费不卡 | 亚欧成人毛片一区二区三区四区 |