之前写过一篇关于python里列表对象的’=’的一个陷阱,
今天一个初学python的同学跟我讨论问题的时候,我们把这个问题扩展了一下。
我们知道,对于列表变量来说,赋值等于地址的传递,那么在原先的变量上做修改,同样会反应到被赋值的新变量上来,具体如下:
>>> a=[2]
>>> b=a
>>> a.append(3)
>>> b
[2, 3]
那么,对于单个变量来说,还是这样吗?事实上不是了,如下:
>>> a=2
>>> b=a
>>
之前写过一篇关于python里列表对象的’=’的一个陷阱,
今天一个初学python的同学跟我讨论问题的时候,我们把这个问题扩展了一下。
我们知道,对于列表变量来说,赋值等于地址的传递,那么在原先的变量上做修改,同样会反应到被赋值的新变量上来,具体如下:
>>> a=[2]
>>> b=a
>>> a.append(3)
>>> b
[2, 3]
那么,对于单个变量来说,还是这样吗?事实上不是了,如下:
>>> a=2
>>> b=a
>>