1

我认为每个对象都有一个id基于键。

>>> a = 10
>>> b = 20
>>> id(a)
1876869280
>>> id(b)
1876869440
>>> a,b=b,a
>>> id(a)
1876869440
>>> id(b)
1876869280

当交换变量时,它们的 id 也会被交换。如果每个对象都有一个唯一的 id,那么为什么要交换 id?我认为交换id(a)id(b)会一样。

4

1 回答 1

6

如果每个对象都有一个唯一的 id,那么为什么要交换 id?

因为你交换了对象。对象不是ab,它们是1020a并且b只是代码用来引用这些对象的名称。

于 2015-02-11T03:20:04.483 回答