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

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

 更新時(shí)間:2020年06月11日 10:41:29   作者:silencement  
在本篇文章里小編給大家分享了關(guān)于python里id函數(shù)的基礎(chǔ)知識(shí)點(diǎn),需要的朋友們可以一起學(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)返回的是對(duì)象的“身份證號(hào)”,唯一且不變,但在不重合的生命周期里,可能會(huì)出現(xiàn)相同的id值。此處所說的對(duì)象應(yīng)該特指復(fù)合類型的對(duì)象(如類、list等),對(duì)于字符串、整數(shù)等類型,變量的id是隨值的改變而改變的。

2、一個(gè)對(duì)象的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判斷兩個(gè)對(duì)象是否相等時(shí),依據(jù)就是這個(gè)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)存中的比較,而==是值的比較。

知識(shí)點(diǎn)擴(kuò)展:

Python id() 函數(shù)

描述

id() 函數(shù)返回對(duì)象的唯一標(biāo)識(shí)符,標(biāo)識(shí)符是一個(gè)整數(shù)。

CPython 中 id() 函數(shù)用于獲取對(duì)象的內(nèi)存地址。

語法

id 語法:

id([object])

參數(shù)說明:

object -- 對(duì)象。

返回值

返回對(duì)象的內(nèi)存地址。

實(shí)例

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

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

到此這篇關(guān)于什么是python的id函數(shù)的文章就介紹到這了,更多相關(guān)python里id函數(shù)是什么內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

巴林左旗| 环江| 鲁甸县| 昂仁县| 临邑县| 浦县| 蒙山县| 昭通市| 铜川市| 两当县| 容城县| 曲靖市| 孟州市| 安平县| 斗六市| 沙田区| 八宿县| 阳东县| 洞头县| 余庆县| 岳西县| 凌云县| 清水河县| 延安市| 湘潭县| 淮滨县| 黑山县| 恩平市| 玉龙| 远安县| 临西县| 渑池县| 屯门区| 榆树市| 苍山县| 江孜县| 昌吉市| 阳谷县| 茶陵县| 云南省| 渭南市|