欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

什么是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)存中的比較,而==是值的比較。

知識點擴(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)文章

  • kaggle+mnist實現(xiàn)手寫字體識別

    kaggle+mnist實現(xiàn)手寫字體識別

    這篇文章主要為大家詳細(xì)介紹了kaggle+mnist實現(xiàn)手寫字體識別,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • 利用pyinstaller將py文件打包為exe的方法

    利用pyinstaller將py文件打包為exe的方法

    本篇文章主要介紹了利用pyinstaller將py文件打包為exe的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • 淺談Python 函數(shù)式編程

    淺談Python 函數(shù)式編程

    這篇文章主要介紹了Python 函數(shù)式編程的相關(guān)資料,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • 簡單實現(xiàn)python收發(fā)郵件功能

    簡單實現(xiàn)python收發(fā)郵件功能

    這篇文章主要教大家如何簡單實現(xiàn)python收發(fā)郵件功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • 探索?Python?Restful?接口測試的奧秘

    探索?Python?Restful?接口測試的奧秘

    掌握Python?Restful?接口測試,讓你的后端服務(wù)像流水一樣順暢,本指南將帶你輕松穿梭于斷言和請求之間,搞定所有測試難題,一起來看,讓代碼在你的指尖跳舞吧!
    2023-12-12
  • 使用Python編寫簡單的畫圖板程序的示例教程

    使用Python編寫簡單的畫圖板程序的示例教程

    這篇文章主要介紹了使用Python編寫簡單的畫圖板軟件的示例教程,利用到了經(jīng)常被用來做游戲的pygame模塊,需要的朋友可以參考下
    2015-12-12
  • Django nginx配置實現(xiàn)過程詳解

    Django nginx配置實現(xiàn)過程詳解

    這篇文章主要介紹了Django nginx配置實現(xiàn)過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-09-09
  • python使用pyqt寫帶界面工具的示例代碼

    python使用pyqt寫帶界面工具的示例代碼

    本篇文章主要介紹了python使用pyqt寫帶界面工具的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • Django 解決上傳文件時,request.FILES為空的問題

    Django 解決上傳文件時,request.FILES為空的問題

    這篇文章主要介紹了Django 解決上傳文件時,request.FILES為空的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • Python實現(xiàn)App自動簽到領(lǐng)取積分功能

    Python實現(xiàn)App自動簽到領(lǐng)取積分功能

    這篇文章主要介紹了Python實現(xiàn)App自動簽到領(lǐng)取積分功能,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-09-09

最新評論