id(object)
関数: はオブジェクトの「ID 番号」を返します。これは一意で変更されませんが、重複しないライフサイクルでは同じ ID 値が表示される場合があります。ここで説明するオブジェクトは、特に複合型オブジェクト (クラス、リストなど) を指します。文字列や整数などの型の場合、値が変化すると変数の ID も変化します。
Pythonバージョン: Python2.x Python3.x
Python英語公式ドキュメント説明:
オブジェクトの「アイデンティティ」を返します。これは、一意であることが保証されている整数(または長整数)です。存続期間中、このオブジェクトの定数です。存続期間が重複しない 2 つのオブジェクトは、同じ id() 値を持つ可能性があります。
CPython 実装の詳細: これは、メモリ内のオブジェクトのアドレスです。
注: オブジェクトの 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 を使用して 2 つのオブジェクトが等しいかどうかを判断する場合、基礎となるのは ID 値です
is と == の違いは、is はメモリ内での比較であるのに対し、== はメモリ内の比較であるということです。価値観
以上がPython関数ID関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。