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

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

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

瀏覽:124日期: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 編程
相關文章:
主站蜘蛛池模板: 毛片手机在线观看 | 久久99精品九九九久久婷婷 | 九九久久免费视频 | 白云精品视频国产专区 | 美女免费在线视频 | 国产欧美成人xxx视频 | 国产成人精品福利网站人 | 偷拍自拍第一页 | 欧洲成人免费高清视频 | 亚洲一级特黄特黄的大片 | 久久免费精品视频在线观看 | 深夜福利视频在线看免费 | 久久国产亚洲精品 | 精品国产90后在线观看 | 亚洲天堂视频一区 | 欧美视频一区 | 久久久久久久久中文字幕 | 天堂影院jav成人天堂免费观看 | 美女一级毛片免费不卡视频 | 国产精品国产三级国产an不卡 | 特级aa一级欧美毛片 | 波多野结衣在线中文 | 日本久久精品 | 香蕉网站狼人久久五月亭亭 | 黄网在线观看免费网站台湾swag | 一区二区不卡久久精品 | 99久久精品99999久久 | 伊在人亚洲香蕉精品区 | 国内精品成人女用 | 亚洲性视频在线 | 欧洲免费无线码一二区 | 一区毛片 | 欧美一级毛片大片免费播放 | 999久久久 | 免费一级欧美片在线观看 | 亚洲精品专区一区二区三区 | 国产美女作爱全过程免费视频 | 亚洲精品亚洲人成在线 | 国产亚洲人成网站在线观看不卡 | 欧美理论大片清免费观看 | 久久精品免视着国产成人 |