歡迎您光臨本站 註冊首頁

python中id函數運行方式

←手機掃碼閱讀     hongdian2012 @ 2020-07-06 , reply:0

id(object)

功能:返回的是對象的“身份證號”,唯一且不變,但在不重合的生命週期裡,可能會出現相同的id值。此處所說的對象應該特指複合類型的對象(如類、list等),對於字符串、整數等類型,變量的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解釋器裡就代表它在內存中的地址(Python的c語言實現的解釋器)。

代碼實例:

  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判斷兩個對象是否相等時,依據就是這個id值

is與==的區別就是,is是內存中的比較,而==是值的比較

知識點擴展:

Python id() 函數

描述

id() 函數返回對象的唯一標識符,標識符是一個整數。

CPython 中 id() 函數用於獲取對象的內存地址。

語法
 

id 語法:

  id([object])

 

參數說明:

object -- 對象。

返回值

返回對象的內存地址。

實例
 

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

  >>>a = 'runoob'  >>> id(a)  4531887632  >>> b = 1  >>> id(b)  140588731085608

 

                                                     

   


[hongdian2012 ] python中id函數運行方式已經有232次圍觀

http://coctec.com/docs/python/shhow-post-241460.html