以下の例では、ID(X)= ID(y)をしながら、なぜID(A)== ID(b)は次のとおりです!パイソンからpython:xとyが等しい値のリストである場合、なぜid(x)!= id(y)ですか?
>>> a = 9
>>> b = 9
>>> id(a)
10901176
>>> id (b)
10901176
>>> id(a) == id(b)
True
>>> x = [1, 2, 3]
>>> y = [1, 2, 3]
>>> id(x) != id(y)
True
>>> id(x)
11428848
>>> id(y)
12943768
私は(IDの取得3.6 DOC)「に戻ります生存期間が重複していない2つのオブジェクトのid()値が同じである可能性があります。 "...しかし、それはdoesnそれを私に説明しないでください。何か案は?
「一意であることが保証されています」これでクリアされませんか? – Moira
2つの別々のリストが作成されているためです。それらには同じアイテムが含まれています(同じです)が、同じオブジェクトではありません(同一ではありません)。 – jonrsharpe
は、メモリ位置「a = 9; b = 5; b + = 4; print_id(a)、id(b) ' –