最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

什么是python的id函數(shù)

 更新時間:2020年06月11日 10:41:29   作者:silencement  
在本篇文章里小編給大家分享了關(guān)于python里id函數(shù)的基礎(chǔ)知識點,需要的朋友們可以一起學(xué)習(xí)下。

python官方給出的id解釋為

id(object)
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.

由此可以看出:

1、id(object)返回的是對象的“身份證號”,唯一且不變,但在不重合的生命周期里,可能會出現(xiàn)相同的id值。此處所說的對象應(yīng)該特指復(fù)合類型的對象(如類、list等),對于字符串、整數(shù)等類型,變量的id是隨值的改變而改變的。

2、一個對象的id值在CPython解釋器里就代表它在內(nèi)存中的地址。(CPython解釋器:http://zh.wikipedia.org/wiki/CPython)

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)

令外,用is判斷兩個對象是否相等時,依據(jù)就是這個id值

class Obj():
  def __init__(self,arg):
    self.x=arg
  def __eq__(self,other):
    return self.x==other.x
   
if __name__ == '__main__':
  
  obj1=Obj(1)
  obj2=Obj(1)
  print obj1 is obj2 #False
  print obj1 == obj2 #True
   
  lst1=[1]
  lst2=[1]
  print lst1 is lst2 #False
  print lst1 == lst2 #True
   
  s1='abc'
  s2='abc'
  print s1 is s2   #True
  print s1 == s2   #True
   
  a=2
  b=1+1
  print a is b    #True
   
  a = 19998989890
  b = 19998989889 +1
  print a is b    #False

is與==的區(qū)別就是,is是內(nèi)存中的比較,而==是值的比較。

知識點擴展:

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)文章

最新評論

民乐县| 双辽市| 盈江县| 蚌埠市| 汉川市| 萝北县| 鱼台县| 望谟县| 宁乡县| 宁津县| 巴中市| 安吉县| 肥东县| 馆陶县| 冕宁县| 赞皇县| 永福县| 五河县| 霍林郭勒市| 大足县| 上虞市| 咸宁市| 永吉县| 大洼县| 西乌| 阿克陶县| 方山县| 裕民县| 渑池县| 周口市| 荔浦县| 安龙县| 井冈山市| 虹口区| 贵溪市| 南木林县| 郁南县| 潮安县| 舒兰市| 富顺县| 永清县|