文章詳情頁
python 為什么調(diào)用函數(shù)會令引用計(jì)數(shù)+2
瀏覽:181日期:2022-08-05 10:36:08
問題描述
import sysa = 11init_cnt = sys.getrefcount(a) - 1print 'init', init_cnt####init 22def function(c): print ’in function, count: ’, sys.getrefcount(c) - 1 ####in function, count: 24 print ’函數(shù)調(diào)用,計(jì)數(shù)器增加’, sys.getrefcount(c) - 1 - init_cnt ####函數(shù)調(diào)用,計(jì)數(shù)器增加 2function(a)
問題解答
回答1:把a(bǔ)當(dāng)參數(shù)傳入到function后被引用了兩次:
for attr in dir(function): print attr, getattr(function, attr)
可以看到參數(shù)a被function這個對象中的兩個屬性分別引用.
相關(guān)文章:
1. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””2. boot2docker無法啟動3. docker-compose中volumes的問題4. nignx - docker內(nèi)nginx 80端口被占用5. java - SSH框架中寫分頁時service層中不能注入分頁類6. docker安裝后出現(xiàn)Cannot connect to the Docker daemon.7. dockerfile - 為什么docker容器啟動不了?8. docker容器呢SSH為什么連不通呢?9. 關(guān)于docker下的nginx壓力測試10. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?
排行榜

熱門標(biāo)簽
網(wǎng)公網(wǎng)安備