W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
? id()
? 函數(shù)用于返回對(duì)象的唯一標(biāo)識(shí)符,通常情況下,這個(gè)唯一標(biāo)識(shí)符是這個(gè)對(duì)象的內(nèi)存地址。
注意,在python的官方文檔中并沒(méi)有直接提到這個(gè)唯一標(biāo)識(shí)符是內(nèi)存地址。但提到了該方法在CPython中是通過(guò)獲取內(nèi)存中對(duì)象的地址實(shí)現(xiàn)的。
?id()
? 語(yǔ)法:
id([object])
參數(shù)說(shuō)明:
返回對(duì)象的唯一標(biāo)識(shí)符(在CPython中,這個(gè)值是對(duì)象的內(nèi)存地址),這是一個(gè)整型數(shù)值
以下實(shí)例展示了 ?id()
?的使用方法:
a = 'w3cschool' # 一個(gè)字符串對(duì)象
x = id(a) # 使用id()函數(shù)獲得這個(gè)字符串對(duì)象的唯一標(biāo)識(shí)符(內(nèi)存地址)
print("字符串對(duì)象a的唯一標(biāo)識(shí)符(內(nèi)存地址)為:",x) # 輸出這個(gè)值
運(yùn)行結(jié)果如下:
字符串對(duì)象a的唯一標(biāo)識(shí)符(內(nèi)存地址)為: 2875940289392
因?yàn)槊看芜\(yùn)行時(shí)使用的內(nèi)存都是不一樣的,所以運(yùn)行結(jié)果并不一定是2875940289392,也可能是其他數(shù)值!
?id()
?函數(shù)因?yàn)榉祷氐氖菍?duì)象的唯一標(biāo)識(shí)符,所以通常用來(lái)判斷兩個(gè)元素是不是同一個(gè)對(duì)象。
舉個(gè)例子,在python中,賦值語(yǔ)句不復(fù)制對(duì)象,而是創(chuàng)建目標(biāo)和對(duì)象的綁定關(guān)系,以字符串為例:
a = 'W3Cschool'
b =a
這種賦值語(yǔ)句獲得的變量a和變量b都是指向同一個(gè)字符串對(duì)象(甚至不會(huì)多復(fù)制一份出來(lái))
a = 'w3cschool' # 一個(gè)字符串對(duì)象
x = id(a) # 使用id()函數(shù)獲得這個(gè)字符串對(duì)象的唯一標(biāo)識(shí)符(內(nèi)存地址)
print("字符串對(duì)象a的唯一標(biāo)識(shí)符(內(nèi)存地址)為:",x) # 輸出這個(gè)值
b=a # 這樣一來(lái)b就相當(dāng)于把a(bǔ)復(fù)制到b中
print("字符串對(duì)象b的唯一標(biāo)識(shí)符(內(nèi)存地址)為:",id(b)) # 輸出b的內(nèi)存地址
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: