python

在Python中,咱們執行表達式 a = 3,Python會怎樣操做呢? 一、首先會建立一個對象表示值3 二、若是變量a不存在,建立變量a 三、把變量a鏈接到表示3的對象 在Python中,變量和對象存儲在不一樣的地方,經過指針鏈接起來... 一個變量老是和對象鏈接起來,不存在不和對象鏈接的變量,可是大的對象可能鏈接到別的對象。 變量到對象的鏈接稱做引用(reference),和c++中的類似,具體的說就是: 1.變量時系統表中的條目,經過指針連接到對象 2.對象是分配的內存,有足夠的空間表示具體的值 Python中,變量沒有類型,它只是一個特定對象的引用而已,每一個對象都有類型。 好比下面的代碼:  >>> a = 2 >>> a = 3.1 >>> a = 'mikewolf' 就是變量a切換引用,指向3個不一樣的對象。 初始a引用對象1(表示值2),接着引用對象2(表示3.1),這是對象1的引用計數爲0,則Python的垃圾回收機制會回收它佔用的內存... 接着a引用對象3(表示mikewolf),釋放對象2. Python對象的頭中,都有一個引用計數,Python就是經過這個引用計數實現垃圾回收。
相關文章
相關標籤/搜索