Python3 id()函數(shù) -返回對象的唯一標識符

2023-04-23 15:13 更新

Python 內置函數(shù) Python 內置函數(shù)


描述

? id()? 函數(shù)用于返回對象的唯一標識符,通常情況下,這個唯一標識符是這個對象的內存地址。

 注意,在python的官方文檔中并沒有直接提到這個唯一標識符是內存地址。但提到了該方法在CPython中是通過獲取內存中對象的地址實現(xiàn)的。


語法

?id()? 語法:

id([object])

參數(shù)說明:

  • object:一個對象。

返回值

返回對象的唯一標識符(在CPython中,這個值是對象的內存地址),這是一個整型數(shù)值


實例

以下實例展示了 ?id() ?的使用方法:

a = 'w3cschool' # 一個字符串對象
x = id(a) # 使用id()函數(shù)獲得這個字符串對象的唯一標識符(內存地址)
print("字符串對象a的唯一標識符(內存地址)為:",x) # 輸出這個值

運行結果如下:

字符串對象a的唯一標識符(內存地址)為: 2875940289392
因為每次運行時使用的內存都是不一樣的,所以運行結果并不一定是2875940289392,也可能是其他數(shù)值!

應用

?id()?函數(shù)因為返回的是對象的唯一標識符,所以通常用來判斷兩個元素是不是同一個對象。

舉個例子,在python中,賦值語句不復制對象,而是創(chuàng)建目標和對象的綁定關系,以字符串為例:

a = 'W3Cschool'
b =a 

這種賦值語句獲得的變量a和變量b都是指向同一個字符串對象(甚至不會多復制一份出來)

a = 'w3cschool' # 一個字符串對象
x = id(a) # 使用id()函數(shù)獲得這個字符串對象的唯一標識符(內存地址)
print("字符串對象a的唯一標識符(內存地址)為:",x) # 輸出這個值

b=a # 這樣一來b就相當于把a復制到b中

print("字符串對象b的唯一標識符(內存地址)為:",id(b)) # 輸出b的內存地址

Python 內置函數(shù) Python 內置函數(shù)


以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號