python中id函數(shù)運行方式
id(object)
功能:返回的是對象的“身份證號”,唯一且不變,但在不重合的生命周期里,可能會出現(xiàn)相同的id值。此處所說的對象應(yīng)該特指復(fù)合類型的對象(如類、list等),對于字符串、整數(shù)等類型,變量的id是隨值的改變而改變的。
Python版本: Python2.x Python3.x
Python英文官方文檔解釋:
Return the “identity” of an object. This is an integer (or long integer) which is guaranteed to be unique and
constant for this object during its lifetime. Two objects with non-overlapping lifetimes may have the same id() value.
CPython implementation detail: This is the address of the object in memory.
注:一個對象的id值在CPython解釋器里就代表它在內(nèi)存中的地址(Python的c語言實現(xiàn)的解釋器)。
代碼實例:
class Obj():
def __init__(self,arg):
self.x=arg
if __name__ == '__main__':
obj=Obj(1)
print id(obj) #32754432
obj.x=2
print id(obj) #32754432
s="abc"
print id(s) #140190448953184
s="bcd"
print id(s) #32809848
x=1
print id(x) #15760488
x=2
print id(x) #15760464
用is判斷兩個對象是否相等時,依據(jù)就是這個id值
is與==的區(qū)別就是,is是內(nèi)存中的比較,而==是值的比較
知識點擴(kuò)展:
Python id() 函數(shù)
描述
id() 函數(shù)返回對象的唯一標(biāo)識符,標(biāo)識符是一個整數(shù)。
CPython 中 id() 函數(shù)用于獲取對象的內(nèi)存地址。
語法
id 語法:
id([object])
參數(shù)說明:
object -- 對象。
返回值
返回對象的內(nèi)存地址。
實例
以下實例展示了 id 的使用方法:
>>>a = 'runoob' >>> id(a) 4531887632 >>> b = 1 >>> id(b) 140588731085608
到此這篇關(guān)于python中id函數(shù)運行方式的文章就介紹到這了,更多相關(guān)python的id函數(shù)如何運行內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Anaconda2下實現(xiàn)Python2.7和Python3.5的共存方法
今天小編就為大家分享一篇Anaconda2下實現(xiàn)Python2.7和Python3.5的共存方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-06-06
Python內(nèi)置函數(shù)int()用法簡單介紹
這篇文章主要給大家介紹了關(guān)于Python內(nèi)置函數(shù)int()用法的相關(guān)資料,int()函數(shù)常用來把其他類型轉(zhuǎn)換為整數(shù),文中通過代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用python具有一定的參考借鑒價值,需要的朋友可以參考下2024-05-05

