溫馨提示×

溫馨提示×

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

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

Python中怎么是對象與引用

發(fā)布時間:2021-06-16 17:13:55 來源:億速云 閱讀:172 作者:Leah 欄目:開發(fā)技術(shù)

今天就跟大家聊聊有關(guān)Python中怎么是對象與引用,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

對象

Python 中,一切皆對象。每個對象由:標(biāo)識(identity)、類型(type)、value(值)組成。

  • 1. 標(biāo)識用于唯一標(biāo)識對象,通常對應(yīng)于對象在計(jì)算機(jī)內(nèi)存地址。使用內(nèi)置函數(shù) id(obj)可返回對象 obj 的標(biāo)識。

  • 2. 類型用于表示對象存儲的“數(shù)據(jù)”的類型。類型可以限制對象的取值范圍以及可執(zhí)行的操作??梢允褂?type(obj)獲得對象的所屬類型。

  • 3. 值表示對象所存儲的數(shù)據(jù)的信息。使用 print(obj)可以直接打印出值。

對象的本質(zhì):一個內(nèi)存塊,擁有特定的值,支持特定類型的相關(guān)操作。

引用

在 Python 中,變量也稱為對象的引用。因?yàn)樽兞看鎯Φ木褪菍ο蟮牡刂?。變量通過地址引用了“對象”。

變量位于棧內(nèi)存(壓棧出棧等)。
對象位于堆內(nèi)存。

Python 是動態(tài)類型語言,變量不需要顯式聲明類型。根據(jù)變量引用的對象,Python 解釋器自動確定數(shù)據(jù)類型。

Python 是強(qiáng)類型語言,每個對象都有數(shù)據(jù)類型,只支持該類型支持的操作。

Python中怎么是對象與引用

變量在使用前必須先進(jìn)行初始化,也就是將變量綁定在一個對象上,格式如:變量名 = 表達(dá)式。執(zhí)行過程中,解釋器先運(yùn)行右邊的表達(dá)式,在堆內(nèi)存中創(chuàng)建一個對象,然后將對象的內(nèi)存地址賦給左邊的變量,如上圖所示。變量如果不初始化,會報(bào)“name is not defined”錯誤。

關(guān)于變量的賦值,常用鏈?zhǔn)劫x值和系列解包賦值方式。鏈?zhǔn)劫x值用于同一個對象賦值給多個變量。如x=y=123 相當(dāng)于:x=123; y=123。系列數(shù)據(jù)賦值給對應(yīng)相同個數(shù)的變量(個數(shù)必須保持一致),如a,b,c=4,5,6 相當(dāng)于:a=4;b=5;c=6。

python中,刪除一個變量的方法是del。變量從棧內(nèi)存中刪除后,其綁定的對象并沒有從堆內(nèi)存中立刻刪除,對象沒有了變量引用,會被垃圾回收器回收,釋放內(nèi)存,以節(jié)約內(nèi)存空間。

看完上述內(nèi)容,你們對Python中怎么是對象與引用有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI