オブジェクトIDとは?
インタプリタがオブジェクトを管理するID
メモリ上のオブジェクトの場所を示す情報
2つのオブジェクトが同じかは、is で判定可能
id関数で確認できる
>>> a = [1,2] >>> b = [1,2] >>> id(a) 4391089224 >>> id(b) 4391101704 >>> a == b True >>> a is b False >>>
リストは可変。2つのオブジェクトは別ものとして管理。
イミュータブル(不変)なオブジェクトのstringで値が同じ場合は同一のIDとなる。
省メモリ効果がある。
>>> a = 'abc' >>> b = 'abc' >>> id(a) 4389672752 >>> id(b) 4389672752 >>> a == b True >>> a is b True >>>