爲什麼ID(一)== ID(b)在ID(X)= ID(Y)在下面的例子:python:爲什麼是id(x)!= id(y)當x和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
從Python 3.6 DOC我得到ID()「返回一個對象的「身份」,這是一個整數,在整個生命週期中保證這個對象是唯一的,並且是不變的,兩個具有非重疊生命期的對象可以擁有相同的id()值。不要向我解釋。有任何想法嗎?
「保證是唯一的」這是否不能清除它? – Moira
因爲您已經創建了兩個單獨的列表。它們包含相同的項目(它們是相同的),但它們不是同一個對象(它們不相同),正如您可以通過變異一個然後查看另一個一樣來判斷。 – jonrsharpe
它指存儲位置'a = 9; b = 5; b + = 4;打印身份證(一),身份證(B)' –