我试图了解变量如何在python中工作。说我有一个对象存储在变量中a:
>>> a = [1, 2, 3]
Run Code Online (Sandbox Code Playgroud)
如果我分配a给b,则它们都指向同一个对象:
>>> b = a
>>> b is a
True
Run Code Online (Sandbox Code Playgroud)
但是,如果我重新分配a或b,那就不再正确了:
>>> a = {'x': 'y'}
>>> a is b
False
Run Code Online (Sandbox Code Playgroud)
这两个变量现在具有不同的值:
>>> a
{'x': 'y'}
>>> b
[1, 2, 3]
Run Code Online (Sandbox Code Playgroud)
我不明白为什么变量现在不同。为什么a is b不再是真的?有人可以解释发生了什么吗?